目录
1 创建String对象的两种方式
1.1 直接赋值
String s = "niu niu";
System.out.println(s);
结果为:niu niu
1.2 使用new来创建String对象
public class test {
public static void main(String[] args) {
String s2 = new String();
System.out.println(s2);
String s1 = new String("oooo");
System.out.println(s1);
char[] chars = {'a','b','c','d'};
String s3 = new String(chars);
System.out.println(s3);
byte[] bytes = {87,97,98,99,100};
String s4 = new String(bytes);
System.out.println(s4);
}
}
结果:
2 内存结构
当使用双引号直接赋值时,系统会检查该字符串在串池中是否存在。
不存在:创建新的。
存在:复用。
3 比较字符串是否相等
字符串比较
boolean equals方法(要比较的字符串):完全一样结果才是true,否则为false
boolean equalsIgnoreCase(要比较的字符串):忽略大小写的比较。
public class Test1 {
public static void main(String[] args) {
String s1 = new String("abc");
String s2 = "abc";
System.out.println(s1 == s2);
boolean rs1 = s1.equals(s2);
System.out.println(rs1);
boolean rs2 = s1.equalsIgnoreCase(s2);
System.out.println(rs2);
}
}
结果:
4 StringBuilder
5 StringJoiner
参考:黑马程序员