浅谈Java语言字符串类使用

时间:2020-07-31 11:21:13 论文范文 我要投稿

浅谈Java语言字符串类使用

  【摘 要】对于一种编程语言来说,字符串处理是经常要进行的操作,Java语言类库中提供了两种常用的字符串类String类和StringBuffer类。本文通过两个实例讨论了String类和StringBuffer类的特点和区别。

  【关键词】Java程序设计;字符串使用;教学策略

  0 引言

  所有程序设计语言都要涉及对字符串的处理,在Delphi和C语言中,字符串的处理是用函数来完成的。而Java作为一种完全面向对象的语言,以类的方式提供对字符串的操作。Java语言对字符串进行了封装,主要提供了两种类对字符串进行操作,分别是String类和StringBuffer类。String类创建的对象是只读的字符串,在字符串创建以后,其内容就不能再修改;而StringBuffer类创建的是可编辑字符串,所以StringBuffer类又叫做可编辑字符串类,可以用来处理需要转变的字符串。

  1 判断字符串是否是回文

  所谓回文字符串,就是这个字符串从前往后读,和从后往前读的内容都相同。例如字符串“abccba”就是一个回文。而字符串“123”就不是回文。判断一个字符串是否是回文,可以用String类来判断,也可以用StringBuffer类来判断。假设判断String类型的字符串str是否是回文。代码如下:

  int low=0,up=str.length()-1;

  while(low  if((str.charAt(low))!=str.charAt(up)) return false;

  else {low++;up--;}

  }

  return true;

  从以上的代码中可以看到,判断String类型的字符串str是否是回文,需要一个一个遍历字符串的内容,从前往后第i个字符和从后往前第i的字符是否相同,如果不相同,返回false,退出循环。如果已经遍历结束,那么返回true。

  如果判断StringBuffer类的字符串str是否是回文,代码如下:

  StringBuffer s1 =new StringBuffer(str);

  s1.reverse();

  if(str.toString().equals(s1.toString()))

  return true;

  else

  return false;

  从以上代码可以看到,因为StringBuffer作为可编辑字符串,所以提供了reverse()策略,把StringBuffer类的字符串内容反转。在上述代码中,把原来str的字符串内容保存在s1中,再判断s1反转后,两个字符串是否相同。因为String类覆盖了equals策略,可以判断两个字符串内容是否相同。而StringBuffer类没有覆盖其父类Object类的equals策略,所以应用equals策略只能判断两个字符串对象是否是同一个对象,而不能判断他们的内容是否相同。所以,要应用toString策略把两个StringBuffer类的字符串先转化为String类的字符串,然后再比较内容是否相同。

  2 两种类型字符串比较

  String和StringBuffer类的代码如下,那么输入结果怎么样呢?

  StringBuffer str1 = new StringBuffer("Hello!");

  StringBuffer str2 = str1;

  String str3 = new String(str1);

  String str4 = str3;

  str1.append("This is a StringBuffer!");

  System.out.println(str1+"\n"+str2);

  str3 = str3.concat("The string is too long.");

  System.out.println(str3+"\n"+str4);

  在以上代码中Str1和str2指向同一个StringBuffer类的字符串,所以,当执行append函数时候,字符串本身发生变化,所以,输出str1和str2结果是一样的。String类的'两个字符串连接的函数是concat,该函数的功能是返回一个新的字符串,反映两个String类字符串的连接效果。在上述程序中把连接后的字符串重新赋值给str3,所以str3和str4输出结果不一样。通过以上分析,我们可以得到该程序的输出结果如下所示。

  Hello!This is a StringBuffer!

  Hello!This is a StringBuffer!

  Hello!The string is too long.

  Hello!

  3 总结

  Java字符串类是Java中使用最多的类之一,String和StringBuffer他们都可以存储和操作字符串。本文通过两个实例,详细给出了String类字符串和StringBuffer可编辑字符串在使用策略上的区别。

  【参考文献】

  [1]蹇旭.探析Java中的字符串[J].科技风,2009(13).

  [2]郑霞,郭磊.Java语言中字符串常量和变量的分析与比较[J].安阳师范学院报,2012(2).

  [3]汪文.用JAVA小应用程序实现正则表达式下字符串的查找[J].九江职业技术学院学报,2002(2).

【浅谈Java语言字符串类使用】相关文章:

1.JAVA语言课程设计论文致谢范文

2.浅谈西方语言哲学是语言研究的营养钵

3.浅谈保险类企业的组织行为

4.浅谈教师的语言艺术论文

5.浅谈保险类企业的组织行为论文

6.浅谈D类音频放大器论文

7.浅谈小学体育课堂语言艺术的论文

8.浅谈幼儿语言障碍的有效方法论文

9.浅谈哈曼美学与语言学中的语言及哲学问题论文