Java–String简单介绍
一、String是什么?
String 是Java中的字符串类,属于引用类型,底层是char数组。
字符串 是有一个或多个字符组成,用" "双引号包裹。
String底层的char数组是用final修饰的,String是不可变的字符串
二、特点
1.存储
两种方式:
String a = "abc" 表示 a 指向字符串常量池中 abc 这个字符串的地址。
String a= new String("abc") 表示在 堆 中创建对象,a 指向堆内存中,即用对象来保存。
String b= new String("abc")
2.判断是否相同
方式一:用 == 比较
System.out.println(a==b) 此方式判断的是 地址 是否相同。
即使是两个值一样的字符串,如果不在同一个对象的话,那也是不一样的
方式二:用 equals 方法比较
System.out.println(a.equals(b));
equals 方法比较的是两个字符串的值是否相等
3.字符串拼接
方式一:用 + 拼接
字符串+字符串=合并后的字符串,但是每次拼接都会创建一个新字符串对象,在内存上会有更大的消耗。
方式二:动态字符串
StringBuffer和StringBuilder 为动态字符串 可以调用append方法进行字符串拼接。
总结
两种比较方式:
== 比较的是 地址 ;equals比较的是 值
equals是Object类的方法,也就说 所有的类都会继承该方法,所有的类比较规则都可以通过重写equals的方式进行比较
字符串拼接:
String为不可变字符串,如果字符串需要频繁改变,并不建议用String,因为内存消耗更大,StringBuilder StringBuffer 为可变字符串,在字符串频繁改变的时候推荐使用这两种