一起Talk Android吧(第十七回:Java常用类之StringBuffer)
来源:互联网 发布:淘宝有趣搜索血滴子 编辑:程序博客网 时间:2024/05/16 06:34
各位看官们,大家好,上一回中咱们说的是Java常用类之String的例子,这一回咱们说的例子是Java常用类之StringBuffer。闲话休提, 言归正转。让我们一起Talk Android吧!
看官们,我们在今天的章回中介绍另外一种字符串类:StringBuffer,它也是Java中的常用类之一,在实际项目中经常使用它。接下来我们看看它的初始化方法。
1. StringBuffer的初始化
我们通过伪代码来演示。
StringBuffer strBuf1 = "Java"; //方式一StringBuffer strBuf2 = new StringBuffer("Java"); //方式二
这时有看官说:“这看上去和String类的初始化方式一样呀”。这位看官说的正确,不过方式一的初始化方式不符合Java的语法,我们只能使用方式二来初始化StringBuffer变量。其中的原因暂且不表,我们在后面的章回中做介绍。
2. StringBuffer的方法
谈完了StringBuffer类型的初始化,我们看看StringBuffer类给我们提供的方法,通过这些方法,可以方便地操作StringBuffer类型的变量。
public int length();//返回字符串的长度public boolean equals(Object arg0);//判断两个字符串的内容是否相等,注意它与操作符“==”的区别public int indexOf(String arg0);//在字符串中查找某个字符串的位置,找到后返回字符串的位置,否则返回-1。public String substring(int arg0);//从字符串中ar0所在的位置开始截取一段字符串,直到字符串末尾为止public StringBuffer append(String arg0);//在字符串后面添加字符串arg0,相当于把原来的字符串和arg0合成了一个新的StringBuffer类型的字符串public StringBuffer insert(int arg0,String arg1);//在字符串arg0位置处插入新字符串arg1public String toString(); //把StringBuffer类型的变量转换为String类型的变量
与String类型提供的方法相比,StringBuffer类型不支持equalsIgnoreCase()和split()
方法,不过它还提供了其它的方法:insert()和append()
。这些方法的具体功能看上面的注释就能明白。除了这些方法外,StringBuffer类还提供了许多方法,我们就不一一列出了。在这里只列出一些常用的方法,其它的方法大家可以查阅JDK文档。我们列出了常用方法的函数原型及其功能,接下来我们通过具体的例子来说明如何使用这些函数:
public class StringEx { public static void main(String args[]) { //StringBuffer strBuf1 = "Java"; StringBuffer strBuf2 = new StringBuffer("Java"); StringBuffer strBuf3 = new StringBuffer("JAVA"); StringBuffer strBuf4 = new StringBuffer("www.google.com"); System.out.println(strBuf2); System.out.println("The length of strBuf2 is: "+strBuf2.length()); System.out.println("strBuf2 equals Java: "+strBuf2.equals("Java")); System.out.println("strBuf2 equals strBuf3: "+strBuf2.equals(strBuf3)); System.out.println("is google in strBuf4? "+strBuf4.indexOf("google")); System.out.println("strBuf4 substring from 4: "+strBuf4.substring(4)); System.out.println("strBuf4 append search: "+strBuf4.append("search")); System.out.println("strBuf4 insert developper. at 4: "+strBuf4.insert(4,"developper.")); System.out.println("strBuf4 toString: "+strBuf4.toString()); } }
下面是程序的运行结果,请大家结合代码进行参考:
JavaThe length of strBuf2 is: 4strBuf2 equals Java: falsestrBuf2 equals strBuf3: falseis google in strBuf4? 4strBuf4 substring from 4: google.comstrBuf4 append search: www.google.comsearchstrBuf4 insert developper. at 4: www.developper.google.comsearchstrBuf4 toString: www.developper.google.comsearch
大家可以结合上面的代码来分析程序运行结果,这样可以加深对StringBuffer类型的理解。不知道大家对该结果有没有新的发现呢?其实,有一位细心的看官已经发现其中的“异常”了:
在执行完该类型的append()方法后StringBuffer类型变量的内容发生了变化。
这是什么原因呢?我们在下一章回中将给大家以及这位细心的看官来做详细的说明。
各位看官,关于Java常用类之StringBuffer的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!
- 一起Talk Android吧(第十七回:Java常用类之StringBuffer)
- 一起Talk Android吧(第十八回:Java常用类String VS StringBuffer)
- 一起Talk Android吧(第十五回:Java常用类之Arrays)
- 一起Talk Android吧(第十六回:Java常用类之String)
- 一起Talk Android吧(第十九回:Java常用类之Date)
- 一起Talk Android吧(第二十回:Java常用类之Date续)
- 一起Talk Android吧(第二十一回:Java常用类之文件操作一)
- 一起Talk Android吧(第二十二回:Java常用类之文件操作二)
- 一起talk Vim吧(第十七回:Vim插件之cscope)
- 一起Talk Android吧(第五回:Java中的程序结构)
- 一起Talk Android吧(第六回:Java中的函数)
- 一起Talk Android吧(第十四回:Java中的异常)
- 一起Talk Android吧(第二十七回:Java泛型)
- 一起Talk Android吧(第二十六回:Java包装类)
- 一起talk C栗子吧(第十七回:C语言实例--栈二)
- 一起Talk Android吧(第十一回:Java中的继承)
- 一起Talk Android吧(第三回:Java中的变量类型)
- 一起Talk Android吧(第四回:Java中的运算符)
- IMweb训练作业-todoList
- Unity3D 正六边形,环状扩散,紧密分布,的程序
- OK盈行重置任意用户密码漏洞(非爆破)
- QTSS对象
- 【Unity3D Editor】导入图片自动转换成Sprite
- 一起Talk Android吧(第十七回:Java常用类之StringBuffer)
- 剑指offer 二叉树的下一个结点
- java面试题大全带答案完整版
- redis集群——增加节点
- 聚美优品任意修改用户密码(非爆破)
- ThreadPoolExecutor原理
- 集合框架-去重字符串案例
- 面试12之给定两个链表ListNode* A,ListNode* B,请返回A+B的结果
- The CoderPai Day in AI