Java学习--StringBuffer&&StringTokenizer

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());
		}

结果为:
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

M FS

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值