java String类型详解
2015-03-11 17:59
525 查看
string 类型是java中一个十分特殊的类型。他涉及到一个字符常量池的概念,并且与堆栈的概念混淆起来。这次我在这里做一个梳理
String s0=”kvill”;
String s1=”kvill”;
String s2=”kv” + “ill”; //这里并没有“kv”和“ill” 对象,在编译期就被解析为一个字符串常量
System.out.println( s0==s2 ); //true
System.out.println( s0==s1 ); //true
“`
String str = "abc"; //在常量池中建一个对象 String str1 = "abc"; //常量池已经有对象了,所以复用 String str2 = new String("abc"); //常量池已经有对象了,所以复用 ,堆中引用,栈中new String("abc"); System.out.println(str == str1);// true System.out.println(str1 == "abc"); //true System.out.println(str2 == "abc"); //false System.out.println(str1 == str2); //false System.out.println(str1.equals(str2)); //true System.out.println(str1 == str2.intern());//true System.out.println(str2 == str2.intern()); //false str2.intern()返回常量池的对象 System.out.println(str1.hashCode() == str2.hashCode());```
String s0=”kvill”;
String s1=”kvill”;
String s2=”kv” + “ill”; //这里并没有“kv”和“ill” 对象,在编译期就被解析为一个字符串常量
System.out.println( s0==s2 ); //true
System.out.println( s0==s1 ); //true
“`
相关文章推荐
- Java String类型剖析及其JVM内存分配详解
- Java String类型剖析及其JVM内存分配详解
- java 参数类型后跟三个点详解:test(String... s)
- java内存与String类型详解
- 详解java String类型(一)
- 详解Java中的String数据类型
- Java中String类型详解
- Java中的String数据类型 详解
- JAVA中string数据类型转换详解
- Java之String类型详解
- java内存与String类型详解
- Java————String类型详解
- Java之String类型详解
- java面试String类型题详解
- Java 内存分配及String类型详解
- 详解Java的String 类型
- Java 内存分配及String类型详解
- java内存与String类型详解
- java数据类型转换详解
- 全面理解Java中的String数据类型