auto commit

This commit is contained in:
CyC2018 2020-11-01 01:18:27 +08:00
parent 00784496dd
commit 3637b789d9
2 changed files with 4 additions and 4 deletions

View File

@ -226,14 +226,14 @@ String 不可变性天生具备线程安全,可以在多个线程中安全地
当一个字符串调用 intern() 方法时如果 String Pool 中已经存在一个字符串和该字符串值相等使用 equals() 方法进行确定那么就会返回 String Pool 中字符串的引用否则就会在 String Pool 中添加一个新的字符串并返回这个新字符串的引用
下面示例中s1 s2 采用 new String() 的方式新建了两个不同字符串 s3 s4 是通过 s1.intern() 方法取得同一个字符串引用intern() 首先把 s1 引用的字符串放到 String Pool 然后返回这个字符串引用因此 s3 s4 引用的是同一个字符串
下面示例中s1 s2 采用 new String() 的方式新建了两个不同字符串 s3 s4 是通过 s1.intern() s2.intern() 方法取得同一个字符串引用intern() 首先把 "aaa" 放到 String Pool 然后返回这个字符串引用因此 s3 s4 引用的是同一个字符串
```java
String s1 = new String("aaa");
String s2 = new String("aaa");
System.out.println(s1 == s2); // false
String s3 = s1.intern();
String s4 = s1.intern();
String s4 = s2.intern();
System.out.println(s3 == s4); // true
```

View File

@ -226,14 +226,14 @@ String 不可变性天生具备线程安全,可以在多个线程中安全地
当一个字符串调用 intern() 方法时如果 String Pool 中已经存在一个字符串和该字符串值相等使用 equals() 方法进行确定那么就会返回 String Pool 中字符串的引用否则就会在 String Pool 中添加一个新的字符串并返回这个新字符串的引用
下面示例中s1 s2 采用 new String() 的方式新建了两个不同字符串 s3 s4 是通过 s1.intern() 方法取得同一个字符串引用intern() 首先把 s1 引用的字符串放到 String Pool 然后返回这个字符串引用因此 s3 s4 引用的是同一个字符串
下面示例中s1 s2 采用 new String() 的方式新建了两个不同字符串 s3 s4 是通过 s1.intern() s2.intern() 方法取得同一个字符串引用intern() 首先把 "aaa" 放到 String Pool 然后返回这个字符串引用因此 s3 s4 引用的是同一个字符串
```java
String s1 = new String("aaa");
String s2 = new String("aaa");
System.out.println(s1 == s2); // false
String s3 = s1.intern();
String s4 = s1.intern();
String s4 = s2.intern();
System.out.println(s3 == s4); // true
```