package com.zwenkai;
public class Test2 {
public static void main(String[] args) {
String str1 = "Hello";
String str2 = "Hello";
System.out.println(str1==str2); //true
System.out.println(str1.equals(str2));//true
/*String池:Java为了优化字符串操作 提供了一个缓冲池;
str指向字符串“hello”,第二句中字符串“hello”,因为字符串在常量池中已经存在,第二句中字符串“hello”就不再开辟空间。
所以不管是equals比较内容, ==比较内存地址都为true*/
String str3 = new String("Hello");
String str4 = new String("Hello");
System.out.println(str1==str2); //false
System.out.println(str1.equals(str2));//true
//如果用==号比较,会返回false,因为创建了两个对象,他们在内存中地址的位置是不一样的。
}
}
String池的概念
最新推荐文章于 2021-08-15 20:02:55 发布