Java面试题-字符串与数组

1. 字符串创建与存储的机制是什么?

String s = "abc";//把“abc”放在常量区,在编译时产生
String s = "ab" + "c";//把"ab" + "c"转换为字符串常量“abc”放到常量区中
String s = new String ("abc");//在运行时把“abc”放到堆里面,如果"abc"在常量池中不存在,则创建。如已存在则不创建
面试题:
new String ("abc")创建了几个对象?

答案:一个或两个。如果常量池中原来有“abc”,那么只创建一个对象;如果常量池中原来没有字符串“abc”,那么就会创建两个对象


 
 


猜你喜欢

转载自blog.csdn.net/u013015065/article/details/79427455