(面试题)String,Random,Math 等一些Object对象(2019年10月22日)
1.请列举switch case中可以填写的类型
答:byte short int char String enum
2.请判断下面生成了几个对象
String a="dax"; String b= new String("dax");
答:产生两个对象,一个在堆内存中 还有一个在方法区中的常量池中
3.请判断下面输出结果
String str6 = "b"; String str7 = "a" + str6; String str67 = "ab"; System.out.println("str7 = str67 : "+ (str7 == str67));
答:结果是false,因为系统编译的时候不知道str6是一个变量,系统不会自动帮你完成字符串的拼接
3.请判断下面输出结果
final String str2 = "ab"; final String str3 = "cd"; String str4 = str2+str3; // String str5 = "abcd"; System.out.println("str4 = str5 : " + (str4==str5));
答:输出的结果是true,由于里面都是字符串常量,结果可以在编译期间就确定下来,所以在class中已经是str1 = "abcd"