Given:
11. public String makinStrings() {
12. String s = “Fred”;
13. s = s + “47”;
14. s = s.substring(2, 5);
15. s = s.toUpperCase();
16. return s.toString();
17. }
How many String objects will be created when this method is invoked?
A. 1
B. 2
C. 3
D. 4
E. 5
F. 6选C还选D

解决方案 »

  1.   

    String s = “Fred”; ....1s = s + “47”; ....2s = s.substring(2, 5); ....3s = s.toUpperCase(); ....4
    4
      

  2.   

    要是我会选5。。可能理解错了
    String s = “Fred”; ....1 s = s + “47”; ....2,3s = s.substring(2, 5); ....4s = s.toUpperCase(); ....55
      

  3.   

    s = s + “47”;这只会创建一个对象,把s和47连起来给s
      

  4.   

    12. String s = “Fred”;  1 2
    13. s = s + “47”; 3
    14. s = s.substring(2, 5); 4
    15. s = s.toUpperCase(); 55
      

  5.   

    错了
    4个吧
    12. String s = “Fred”;  1  
    13. s = s + “47”; 2 
    14. s = s.substring(2, 5); 3
    15. s = s.toUpperCase(); 4 
      

  6.   

    http://blog.csdn.net/ZangXT/archive/2009/05/19/4201979.aspx
      

  7.   

    3个!呵呵,学习了。String s = “Fred”; ....1 s = s + “47”; ....1 ,这里并没有创建新的对象,因为s和"47"都是字面值常量,编译器在类加载时(编译期)就已经将它们创建
    s = s.substring(2, 5); ....2 s = s.toUpperCase(); ....3