3

(JAVA):字符串的拼接插入-----StringBuffer类的常见API

 2 years ago
source link: https://blog.51cto.com/u_15606797/5242947
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

目录

 ​前言:​

 ​1、StringBuffer类的初始化 ​

 ​注意:​

 ​常见的三种初始化:​

 ​2、append() 方法​

 ​声明:​

 ​功能:            ​

 ​代码示例1:​

 ​代码示例2:​

 ​结果分析:        ​

 ​3、insert() 方法 ​

 ​声明:​

 ​功能:              ​

 ​代码示例:​

 ​扩展示例:​

 ​ 结果分析:​

 ​4、补充: ​


(JAVA):字符串的拼接插入-----StringBuffer类的常见API_字符串

                                        把握好运,赢得名声

        运气变化无常,却能助人一生,名声永恒持久,却总是姗姗来迟。获得好运之后要防范别人的嫉恨,获得名声之后要防止被别人遗忘。你可以渴求好运,有时也能够实现愿望,但名声却是靠孜孜不倦的努力得来的。对名声的渴望来源于美德。古往今来,名声总是与巨人相伴,而且会分成两个极端:不是臭名远扬的奸雄怪杰,就是众人皆赞的天才英豪。


1、StringBuffer类的初始化

StringBuffer在字符串操作上克服了String拼接会产生多个对象的问题。它可以以一个字符串作为参数进行初始化。

常见的三种初始化:

第一种:

StringBuffer str1 = new StringBuffer(); //无参构造函数初始化

第二种:

StringBuffer str1 = new StringBuffer("ting"); //使用字符串对象进行初始化

第三种:

StringBuffer str2 = new StringBuffer(str1);//使用另一个StringBuffer对象进行初始化

2、append() 方法

声明:

              StringBuffer append(String s)

功能:
              将指定的字符串追加到此字符序列。 

代码示例1:

StringBuffer str1 = new StringBuffer(); //初始化对象

str1.append("CSE"); //追加字符串
System.out.println(str1); //打印输出

运行结果1:

 CSE (说明:初始化对象是空的,所以结果是追加的字符)

代码示例2:

StringBuffer str1 = new StringBuffer("CSE"); //初始化对象

str1.append("你是"); //追加字符”你是“
str1.append(18); //追加数字18
str1.append("age"); //追加字符age
str1.append(true); //追加布尔类型的true
System.out.println(str1);

运行结果2:

CSE你是18agetrue

结果分析:

        从运行结果看,StringBuffer的append() 方法可以追加任何类型的值,并将之转换成字符串添加到StringBuffer对象的末尾。StringBuffer将boolean类型的变量的值当成是字面量追加到末尾,而其他类型则直接当成一个字符进行追加。 

3、insert() 方法

声明:

                insert(int offset, String str)

功能:
                将 ​​str​​ 参数的字符串插入此序列中。

代码示例:

str1.insert(2,'我'); //在索引2的位置插入字符

System.out.println(str1);

运行结果:(承接前面的结果进行改变)

                CS我E你是18agetrue

扩展示例:

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

str1.insert(3, ch, 0, 2); //在索引3的位置插入数组(数组从0索引开始到第2个字符)到str1中去

System.out.println(str1);

        3表示str1的索引位置;ch表示要插入的数组;0、2表示数组中要插入到str1中的下标索引范围

运行结果:

CS我abE你是18agetrue

结果分析:

        StringBuffer还有insert方法可以在指定的位置插入传入的值,insert也会将boolean类型的变量以字面量值插入到指定的索引位置,该索引位置的值依次向后移动。Insert还可以接受一个字符序列作为参数,从指定的字符序列索引位置取出指定长度的字符序列,插入到StringBuffer对象的指定索引位置,该索引位置及之后的字符依次向后移动。

4、补充:

        打印StringBuffer对象的时候并没有使用toString() 方法,这是因为系统的输入输出方法会把传入的参数转换成字符串后输出,这相当于对所有的打印目标都添加了一个toString()方法,因此,此处可以省去toString()方法。

声明:

        String toString()

功能:
        返回此序列中数据的字符串表示形式


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK