您的位置:首页 > Web前端

Java学习--StringBuffer&&StringTokenizer

2019-08-03 13:43 267 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/qq_40561126/article/details/98324304

StringBuffer

学习过String对象我们知道,一但我们用String类创建了一个字符串对象,我们是不能直接对该字符串进行增加、修改、删除等操作的。也就是说String对象一经创建就不能改变,那这样就不可避免地是我们用String操作字符串时会有很多麻烦,而StringBuffer类就可以解决这些问题。

构造方法

StringBuffer有三个构造方法
1、无参构造方法

StringBuffer sb = new StringBuffer();

创造一个初始容量为16个字符的StringBuffer对象,当存储字符大于16时可以自动的增加。

2、int类型参数的构造方法

int n = 10;
StringBuffer sb = new StringBuffer(n);

创造一个初始容量为n个字符的StringBuffer对象,当存储字符大于n时可以自动的增加。

3、String对象为参数的构造方法

String s = "hello";
StringBuffer sb = new StringBuffer(s);

创造一个初始容量为指定的字符串长度加上16个字符的StringBuffer对象,当存储字符大于该长度时可以自动的增加。

常用方法

1、public StringBuffer append(String s)
在原字符串的后边增加上指定的字符串,如:

StringBuffer sb = new StringBuffer("hello");

sb.append(" world!");

System.out.println(sb);

输出结果为:hello world!

类似的方法还有:
public StringBuffer append(byte n)
public StringBuffer append(short n)
public StringBuffer append(int n)
public StringBuffer append(long n)
public StringBuffer append(float f)
public StringBuffer append(double d)
public StringBuffer append(boolean f)
public StringBuffer append(char c)
public StringBuffer append(Object obj)
……

2、public StringBuffer insert(int n, String s)

向原字符串的第n+1处添加指定的字符串,如:

StringBuffer sb = new StringBuffer(" world!");

sb.insert(0,"hello" );

System.out.println(sb);

输出结果为:hello world!

3、public StringBuffer setCharAt(int n, char c)

将原字符串中的第n+1个字符替换为指定的字符。

4、public StringBuffer replace(int startIndex, int endIndex, String s)
将原字符的从startIndex处开始到endIndex-1处的子串替换为指定的字符串。

5、public StringBuffer delete(int startIndex, int endIndex)

将原字符的从startIndex处开始到endIndex-1处的子串删除

6、public StringBuffer reverse()
将原字符串翻转,如:

StringBuffer sb = new StringBuffer("world!");

sb.reverse();

System.out.println(sb);

结果为:!dlrow’

7、public char charAt(int n)
获取原字符串的第n+1个字符

8、public int length()
获取对象中字符串序列的长度

9、public int capacity()
获取该对象的容量

##StringTokennizer
在String类中我们学过用split()方法分解字符串,其实利用StringTokenizer对象分割字符串,更加方便。通常我们将分割出来的每个单词成为语言符号。

构造方法

1、StringTokenizer st = new StringTokenizer(String s)
该构造方法利用默认的分隔符(空格、换行符、回车符、tab符、进纸符)作为分割标记

2、StringTokenizer st = new StringTokenizer(String s, String delim)
该构造方法利用delim中的任意字符或者字符的组合作为分割标志。

常用方法

1、public String nextToken()
依次取得分割出来的语言符号

2、public boolean hasMoreTokens()
判断是否还有未取出的语言符号

3、public int countTokens()
返回还有几个未取出的语言符号

例:

StringTokenizer st = new StringTokenizer("hello,world;,come!on,!;123", ",!;");

while(st.hasMoreTokens()) {
System.out.println(st.nextToken());
}

结果为:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: