注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

中老年人学电脑摄影博客

摄影采风、摄影作品欣赏、摄影指导、摄影教程、后期制作教程

 
 
 

日志

 
 
关于我

我从事中老年人摄影、计算机教育行业,在哈尔滨老年人大学任教,在从事摄影、计算机教育13年当中11年从事中老年人摄影、计算机教育,是国内最早从事中老年人计算机教育者之一,给我的感觉是中老人学得快,忘的快,人非常好,乐观向上。是我学习的榜样,我非常感谢中老年朋友,让我在学习和工作中得到了宝贵财富。

网易考拉推荐

第五章 字符串类  

2010-03-15 10:25:28|  分类: JAVA |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

 

【课前思考】

  1. Java中的字符串有两种表示方法,这两种表示方法有什么不同?

  2. 如何访问字符串?如何修改字符串?如何对两个字符串进行比较?

【学习目标】

  本讲主要讲述java编程语言中的字符串及其处理。通过本讲的学习,同学们可以在java程序灵活的使用字符串。

【学习指南】

  同任何一种编程语言一样,应深刻理解字符串的概念,牢记字符串处理的相关语法,从而达到学习的目的。

【难 重 点】

 重点:

  1. 深刻理解字符串的概念。

  2. 能熟练处理字符串。

 难点:

  1. 使用StringBuffer类表示和操作字符串时,要注意它可以处理可变字符串,即当在StringBuffer类型的字符串中插入字符而超出已分配的缓冲区时,系统会自动地为它分配额外的空间。

【知 识 点】

   5 字符串的处理

      5.1 字符串的表示

      5.2 访问字符串

      5.3 修改字符串

      5.4 其它操作

第五章 字符串的处理

5.1 字符串的表示

5.1.1字符串常量

  字符串常量是用双引号括住的一串字符。

    "Hello World!"

5.1.2 String表示字符串常量

  用String表示字符串:

  String( char chars[ ] );

  String( char chars[ ], int startIndex, int numChars );

  String( byte ascii[ ], int hiByte );

  String( byte ascii[ ], int hiByte, int startIndex, int numChars );

  String使用示例:

  String s=new String() ; 生成一个空串

  下面用不同方法生成字符串"abc":

  char chars1[]={'a','b','c'};

  char chars2[]={'a','b','c','d','e'};

  String s1=new String(chars1);

  String s2=new String(chars2,0,3);

  byte ascii1[]={97,98,99};

  byte ascii2[]={97,98,99,100,101};

  String s3=new String(ascii1,0);

  String s4=new String(ascii2,0,0,3);

5.1.3 用StringBuffer表示字符串

  StringBuffer( ); /*分配16个字符的缓冲区*/

  StringBuffer( int len ); /*分配len个字符的缓冲区*/

  StringBuffer( String s ); /*除了按照s的大小分配空间外,再分配16个

               字符的缓冲区*/

5.2 访问字符串

1.类String中提供了length( )、charAt( )、indexOf( )、lastIndexOf( )、getChars( )、getBytes( )、toCharArray( )等方法。

  ◇ public int length() 此方法返回字符串的字符个数

  ◇ public char charAt(int index) 此方法返回字符串中index位置上的字符,其中index 值的范围是0~length-1

  ◇ public int indexOf(int ch)

    public lastIndexOf(in ch)

  返回字符ch在字符串中出现的第一个和最后一个的位置

  ◇ public int indexOf(String str)

    public int lastIndexOf(String str)

  返回子串str中第一个字符在字符串中出现的第一个和最后一个的位置

  ◇ public int indexOf(int ch,int fromIndex)

    public lastIndexOf(in ch ,int fromIndex)

  返回字符ch在字符串中位置fromIndex以后出现的第一个和最后一个的位置

  ◇ public int indexOf(String str,int fromIndex)

    public int lastIndexOf(String str,int fromIndex)

  返回子串str中的第一个字符在字符串中位置fromIndex后出现的第一个和最后一个的位置。

  ◇ public void getchars(int srcbegin,int end ,char buf[],int dstbegin)

   srcbegin 为要提取的第一个字符在源串中的位置, end为要提取的最后一个字符在源串中的位置,字符数组buf[]存放目的字符串,    dstbegin 为提取的字符串在目的串中的起始位置。

  ◇public void getBytes(int srcBegin, int srcEnd,byte[] dst, int dstBegin)

  参数及用法同上,只是串中的字符均用8位表示。

 2.类StringBuffer提供了 length( )、charAt( )、getChars( )、capacity()等方法。

  方法capacity()用来得到字符串缓冲区的容量,它与方法length()所返回的值通常是不同的。

5.3 修改字符串

1.String类提供的方法:

   concat( )

   replace( )

   substring( )

   toLowerCase( )

   toUpperCase( )

  ◇ public String contat(String str);

  用来将当前字符串对象与给定字符串str连接起来。

  ◇ public String replace(char oldChar,char newChar);

  用来把串中出现的所有特定字符替换成指定字符以生成新串。

  ◇ public String substring(int beginIndex);

  public String substring(int beginIndex,int endIndex);

  用来得到字符串中指定范围内的子串。

  ◇ public String toLowerCase();

  把串中所有的字符变成小写。

  ◇ public String toUpperCase();

  把串中所有的字符变成大写。

 2.StringBuffer类提供的方法:

  append( )

  insert( )

  setCharAt( )

  如果操作后的字符超出已分配的缓冲区,则系统会自动为它分配额外的空间。

  ◇ public synchronized StringBuffer append(String str);

  用来在已有字符串末尾添加一个字符串str。

  ◇ public synchronized StringBuffer insert(int offset, String str);

  用来在字符串的索引offset位置处插入字符串str。

  ◇ public synchronized void setCharAt(int index,char ch);

  用来设置指定索引index位置的字符值。

  注意:String中对字符串的操作不是对源操作串对象本身进行的,而是对新生成的一个源操作串对象的拷贝进行的,其操作的结果不影响源串。

  相反,StringBuffer中对字符串的连接操作是对源串本身进行的,操作之后源串的值发生了变化,变成连接后的串。

5.4 其它操作

1.字符串的比较

  String中提供的方法:

  equals( )和equalsIgnoreCase( )

  它们与运算符'= ='实现的比较是不同的。运算符'= ='比较两个对象是否引用同一个实例,而equals( )和equalsIgnoreCase( )则比较  两个字符串中对应的每个字符值是否相同。

 2.字符串的转化

  java.lang.Object中提供了方法toString( )把对象转化为字符串。

 3.字符串"+"操作

  运算符'+'可用来实现字符串的连接:

  String s = "He is "+age+" years old.";

  其他类型的数据与字符串进行"+"运算时,将自动转换成字符串。具体过程如下:

  String s=new StringBuffer("he is").append(age).append("years old").toString();

  注意:除了对运算符"+"进行了重载外,java不支持其它运算符的重载。

  评论这张
 
阅读(456)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017