可变字符序列:StringBuffer和StringBuilder常用方法

  • 字符串的兄弟类:
  • String:不可变对象。一旦修改就会有新对象。
  • 引入:可变字符序列,StringBuffer和StringBuilder
  • StringBuilder默认的char[]长度为16;
  •  不够了,扩容为原来的2倍+2
    
  • StringBuffer和StringBuilder:
  • StringBuffer线程安全的
  • StringBuilder线程不安全的,JDK1.5引入
  • 方法:
  • (1)append(xx):拼接,连接
@Test
	public void test1(){
		StringBuilder s = new StringBuilder();
		s.append("hello").append(true).append('a').append(12).append("atguigu");
		System.out.println(s);
		System.out.println(s.length());
	}
  • (2)insert(index,xxx):在index位置插入xx
@Test
	public void test2(){
		StringBuilder s = new StringBuilder("helloworld");
		s.insert(5, "java");
		s.insert(5, "chailinyan");
		System.out.println(s);
	}
  • (3)delete(int start, int end):删除[start,end)范围内
  • (4)deleteCharAt(int index):删除[index]位置
@Test
   public void test3(){
   	StringBuilder s = new StringBuilder("helloworld");
   	s.delete(1, 3);
   	s.deleteCharAt(4);
   	System.out.println(s);
   }
  • (5)reverse():反转
@Test
	public void test4(){
		StringBuilder s = new StringBuilder("helloworld");
		s.reverse();
		System.out.println(s);
	}
  • (6)setCharAt(int index, char ch):替换[index]位置的字符为ch
@Test
	public void test5(){
		StringBuilder s = new StringBuilder("helloworld");
		s.setCharAt(2, 'a');
		System.out.println(s);
	}
  • (7)setLength(int newLength)
@Test
	public void test6(){
		StringBuilder s = new StringBuilder("helloworld");
		s.setLength(30);
		System.out.println(s);
	}
  • (8)substring(int start, int end):截取
  • (9)indexOf(String str)
    如果存在返回下标,如果不存在返回-1
    (10)lastIndexOf(String str)
    如果存在返回最后一个的下标,如果不存在返回-1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值