String类是字符串类型,在java中属于引用数据类型。
String类的特点
String类是最终类(FInal),是引用数据类型,不能被继承。
String定义的内容一旦声明就不可再被改变。
String类对象的相等判断使用equals()方法完成,“==” 实现的是地址数值的比较。
String类的创建方式
String name = "张三";
特点:引号创建的字符串直接复制在字符串池中
创建对象方式:String name = new String("张三");
注意事项:
new创建字符串时首先查看池中是否有相同值的字符串,如果有拷贝一份到堆中,然后返回堆中地址,如果池中没有,则在堆中创建一份,然后返回堆中的地址。
String类的存储原理
在jvm中的存储原理如下:
String StringBuffer StringBuilder 的区别
//字符串反转的两种办法
//方法1
String str1="Perserve!";
str1= new StringBuilder(str1).reverse().toString();
System.out.println(str1);
//方法2
String str2="Fight!";
StringBuffer rev=new StringBuffer();
for (int i = str2.length()-1; i >=0 ; i--) {
rev.append(str2.charAt(i));
}
System.out.println(rev);