看String源码可知:字符串String是char字符数组。
public final class String
implements java.io.Serializable, Comparable<String>, CharSequence {
private final char value[];
public String() {
this.value = "".value;
}
}
常用工具方法:
字符串子串
String hello = "Hello";
//从0开始到第三位、,但不包含第三位
System.out.println(hello.substring(0, 3));
//从第3位到最后
System.out.println(hello.substring(3));
//结果
Hel
lo
字符串拼接
一般我们使用+号拼接,也可以使用join方法。
String hello = "Hello";
System.out.println(hello+" world!");
//用,连接字符串
System.out.println(String.join(",", hello, "world!"));
//结果
Hello world!
Hello,world!
判断相等
不要使用==判断字符串是否相等,==只能判断是否同一个位置的字符串
"Hello".equal(hello);
返回给定位置的代码单元
"Hello".charAt(1);
字符串按字段比较大小
"Hello".compareTo("Hallo"); //相等返回0 小于返回-1 大于返回1
以XX开始 或以什么结尾
"Hello".startsWith("He");
"Hello".endsWith("llo");
判断字符串包含
"Hello".indexOf("llo"); //不存在返回-1 存在返回在第几个位置
长度
"Hello".length();
转大小写
"Hello".toLowerCase();
"Hello".toUpperCase();
字符串替换
"Hello".replace("He", "ok");
去除空格
"Hello".trim();
StringBuilder 和 String
String字符串拼接式每次都生成一个新的字符串对象,在高频操作性能不高,用StringBuilder是同一个构建器对象的操作,要使用字符串时toString() 调用。