关于双等号判断的深入面试题
来源:互联网 发布:淘宝代销货源怎么找 编辑:程序博客网 时间:2024/06/07 13:34
1.如果整型字面量的值在-128到127之间,那么不会new新的Integer对象,而是直接引用常量池中的Integer对象,所以上面的面试题中f1==f2的结果是true,而f3==f4的结果是false。
Integer f1=100,f2=100,f3=150,f4=150;System.out.println(f1==f2);System.out.println(f3==f4);
2.存在于.class文件中的常量池,在运行期被JVM装载,并且可以扩充。String的intern()方法就是扩充常量池的一个 方法;当一个String实例str调用intern()方法时,Java查找常量池中是否有相同Unicode的字符串常量,如果有,则返回其的引用, 如果没有,则在常量池中增加一个Unicode等于str的字符串并返回它的引用;看例3就清楚了
String s1="JavaCode";String s2=new String("JavaCode");String s3="Java";String s4="Code";String s5="Java"+"Code";String s6=s3+s4;System.out.println(s1==s2);System.out.println(s1==s5);System.out.println(s1==s6);System.out.println(s1==s6.intern());System.out.println(s2==s2.intern());
3.Java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。
用法:
result = object instanceof class
参数:
Result:布尔类型。
Object:必选项。任意对象表达式。
Class:必选项。任意已定义的对象类。
说明:
如果 object 是 class 的一个实例,则 instanceof 运算符返回 true。如果 object 不是指定类的一个实例,或者 object 是 null,则返回 false。
A a=null;B b=null;String str="";System.out.println(a instanceof A);b=new B();System.out.println(b instanceof B);System.out.println(str instanceof String);
更多面试题请狠狠的点击 下载
阅读全文
0 0
- 关于双等号判断的深入面试题
- 等号(赋值)与双等号判断的坑
- 深入PHP 双等号 详解
- 关于js的双等号和三等号引起的bug
- 关于Servlet的面试题
- 关于Tencent的面试题
- 关于Servlet的面试题
- 关于概率的面试题
- 面试题 关于JAVA 的
- 关于数组的面试题
- 关于Servlet的面试题
- 关于概率的面试题
- 关于Servlet的面试题
- 关于struts2的面试题
- 关于内存的面试题
- 关于C++的面试题
- 关于C++的面试题
- 关于线程的面试题
- 求反码补码题
- css font的简写规则
- Linux 工作记录
- Scope provided在IDEA中不起作用
- Ubuntu Linux下tomcat报错java.net.MalformedURLException: Local host name unknown: java.net
- 关于双等号判断的深入面试题
- 港科VINS-Mono系统学习(1)
- Linux的帮助命令
- HeadFirst JavaScript读书笔记
- CSDN-markdown编辑器
- PHP函数
- Struts2学习总结(七):Struts中的OGNL
- 微信小程序 rich-text a标签
- chrome打包扩展程序