我有两个字符串问题?
//First example
{
String s="Hello"+"world";
String s2= "Helloworld"+" Example";
}
如何在这里创建字符串对象?
// second example
{
String s1= new String("Cricket");
String s2=s1;
}
创建了多少个对象以及内存的哪个部分?
答案 0 :(得分:3)
第一个例子在编译时创建了两个字符串(" Helloworld"" Helloworld Example"),它们被放入字符串常量池中。初始化之后(在运行时使这些字符串可用)不会创建其他字符串对象。
第二个示例在编译时在字符串常量池(" India"" Cricket")中创建两个字符串对象,并在堆中运行时创建一个字符串对象({{ 1}})。