Java中String、StringBuffer、StringBuilder和toString的介绍
作为一个刚接触java的小白,觉得字符串是个比较大的知识点,所以我把自己整理的一点笔记写成随笔,与园友一起分享,也请园友多多指出意见。
一、String类
1、字符串长度——length()
String str = "coder"; System.out.print(str.length()); 输出结果: 5
2、字符串转换数组——toCharArray()
String str = "coder"; char data[] = str.toCharArray(); //调用String类中toCharArray方法 for (int i = 0; i < data.length; i++){ System.out.print(data[i]+" "); //加入空格,以示区分 } 输出结果: c o d e r
3、从字符串中取出指定位置的字符——charAt()
String str = "coder"; System.out.print(str.charAt(3)); 输出结果: e
4、字符串与byte数组的转换——getBytes()
String str = "coder"; byte bytes[] = str.getBytes(); for (int i = 0; i < bytes.length; i++){ System.out.print(new String(bytes)+"\t"); //加入换行,以示区分 } 输出结果: coder coder coder coder coder
5、过滤字符串中存在的字符——indexOf()
String str = "coder@163.com"; System.out.print(str.indexOf("@")); 输出结果: 5
6、去掉字符串的前后空格——trim()
String str = " coder@163.com "; System.out.print(str.trim()); 输出结果: coder
7、从字符串中取出子字符串——subString()
8、大小写转换——toLowerCase()、toUpperCase()
9、判断字符串的开头结尾字符——endWith()、startWith()
10、替换String字符串中的一个字符——replace()
二、StringBuffer类
1、认识StringBuffer:
缓冲区、本身也是操作字符串,但是与String不同,StringBuffer是可以更改的。StringBuffer也是一个操作类,所以必须通过实例化进行操作
2、StringBuffer常用方法:
append()
insert()
replace()
indexOf()
举例:
StringBuffer str = new StringBuffer(); str.append("coder"); system.out.print(str.toString()); 输出结果: coder
三、StringBuilder类
1、认识StringBuilder:
一个可变的字符序列,该类被设计作用StringBuffer的一个简易替换,用在字符串缓冲区被单个线程所使用的时候。建议优先考虑该类,速度比StringBuffer要快
2、但是如果涉及到线程安全方面,建议使用StringBuffer
2、StringBuilder常用方法:
append()
insert()
replace()
indexOf()
四、toString()方法
因为它是Object里面已经有了的方法,而所有类都是继承Object,所以“所有对象都有这个方法”。它通常只是为了方便输出,比如System.out.println(xx),括号里面的“xx”如果不是String类型的话,就自动调用xx的toString()方法。总而言之,它只是sun公司开发java的时候为了方便所有类的字符串操作而特意加入的一个方法。
StringBuffer str = new StringBuffer(); str.append("coder"); system.out.print(str.toString()); 输出结果: coder