String引用类型
String引用类型
Java中的jvm分为:堆、栈、本地方法栈和方法区。
堆:存储的全部是new出来的对象。
栈:存储基本类型的变量数据和对象的引用。
方法区:又称静态区,包含所有的class和static变量。
常量池:存储编译时已经确定的值。
以下是String引用类型的几个例子。
1.
String str1 = "Tulun";
String str2 = "Tulun";
System.out.println(str1 == str2);//true
2.
String str3 = new String("Tulun");
String str4 = new String("Tulun");
System.out.println(str3 == str4);//false
3.
String str5 = new String("Tulun");
String str6 = "Tulun";
System.out.println(str5 == str6);//false
4.
String str7 = new String("Tulun");
String str8 = "Tu"+"lun";//Tulun 常量池
System.out.println(str7 == str8)
5.
char[] array = {'t','u','l','u','n'};
String str11 = "tulun";
String str12 = new String(array);
System.out.println(str11 == str12);//false
补充:
String的equal()方法
1.先比较引用的地址是否一样,若相等则直接返回true.
2.再比较类型是否一样 。
a.比较长度。
1).依次比较数值是否相等,依次比较每一个字符,全部相等则为true,否则为false。