Possible Duplicate:
How many java objects generated by this code? and why?
我对以下内容很困惑
String s1 = new String("Java");
String s2 = new String("Java");
这里创建了多少个对象?
String s1 = new String("Java");
String s2 = new String("Ruby");
这里创建了多少个对象?
String s1 = new String("Java");
String s2 = "Java";
这里创建了多少个对象?
String s1 = "Java";
String s2 = "Java";
这里创建了多少个对象?
最佳答案
您的代码的第一部分:
创建了 2 个对象。 如果字符串池中不存在“Java”,则会创建一个字符串并将其添加到其中。
您的代码的第二部分:
创建 2 个对象,如果字符串池中不存在“Java”和“Ruby”,则创建两个字符串并将其添加到其中。
您的代码的第三部分:
已创建一个对象。并执行相同的条件以添加到字符串池。
您的代码的第四部分:
如果字符串池中不存在“Java”,则仅创建一个对象。否则没有创建新对象。
关于java - Java中以下字符串创建了多少个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14497335/