学习笔记,仅供参考


JAVA面试题

  • 请看下面一段代码,写出它的输出结果
package com.guiyang.restudy3;public class D5Integer {public static void main(String[] args) {Integer i1 = new Integer(97);Integer i2 = new Integer(97);System.out.println(i1 == i2);System.out.println(i1.equals(i2));System.out.println("-----------");Integer i3 = new Integer(197);Integer i4 = new Integer(197);System.out.println(i3 == i4);System.out.println(i3.equals(i4));System.out.println("-----------");Integer i5 = 127;Integer i6 = 127;System.out.println(i5 == i6);System.out.println(i5.equals(i6));System.out.println("-----------");Integer i7 = 128;Integer i8 = 128;System.out.println(i7 == i8);System.out.println(i7.equals(i8));}}

输出:

false
true
-----------
false
true
-----------
true
true
-----------
false
true
  • 疑问

为何i5和i6指向的是同一个对象,而i7和i8指向的不是同一个对象?

  • 解答:

-128到127是byte的取值范围,如果在这个取值范围内,自动装箱就不会新创建对象,而是从常量池中获取, 如果超过了byte取值范围就会再新创建对象。

  • 注意

a == b 是比较a和b的地址值是否为同一个.

而对于a.equals(b)来说,如果是Object类中的equals方法,那么这个方法同样是比较a和b的地址值。但是一般类都会重写该方法,Integer类也重写了该方法:

public boolean equals(Object obj)

重写后的equals方法比较此对象与指定对象。当且仅当参数不为null,并且是一个与该对象包含相同 int 值的 Integer 对象时,结果为 true。

JAVA面试题(part7)--Integer类相关推荐

  1. java 面试题解惑一 类的初始化顺序

    大家在去参加面试的时候,经常会遇到这样的考题:给你两个类的代码,它们之间是继承的关系,每个类里只有构造器方法和一些变量,构造器里可能还有一段代码对变量值进行了某种运算,另外还有一些将变量值输出到控制台 ...

  2. java零基础Ⅱ-- 4.常用类

    java零基础Ⅱ-- 4.常用类 一.包装类 包装类的分类 包装类和基本数据的转换 演示 测试题 包装类型和String类型的相互转换 Integer类和Character类的常用方法 Integer ...

  3. 二级考试java模拟考试_计算机考试二级考试Java模拟试题附答案

    全国计算机等级考试二级考试,需要考生在考前做好足够的复习准备,下面小编为大家带来计算机考试二级考试Java模拟试题,供各位考生练习! 计算机考试二级考试Java模拟试题 1.类Test1定义如下:pu ...

  4. java 实体类包含list 怎么取值_2019 最新 500 道 Java 面试题

    2015 年,因为工作岗位的变动,开始负责给集团招聘一些技术人员,出于对公司的负责,也为了更好的胜任技术经理的职位,在面试的这件事上,我做了大量的"功课",首先我研究了几乎所有大厂 ...

  5. java 实体类包含list 怎么取值_舅舅是面试官,偷偷告诉你们面试官最爱问的Java面试题...

    2015 年,因为工作岗位的变动,舅舅开始负责给集团招聘一些技术人员,出于对公司的负责,也为了更好的胜任技术经理的职位,在面试的这件事上,舅舅做了大量的"功课",首先研究了几乎所有 ...

  6. java 字符串 面试题_Java常用类String的面试题汇总(java面试题)

    1.比较两个字符串时使用"=="还是equals()方法? 当然是equals方法."=="测试的是两个对象的引用是否相同,而equals()比较的是两个字符串 ...

  7. Java中的Integer类

    常见对象(Integer类的概述和构造方法) 如果有两个需求: 需求: 将100转换成二进制, 八进制, 十六进制 判断一个数是否在int的范围内 当然,可以使用最基本的方法累除取余来求一个十进制数的 ...

  8. 【java面试题】Java面试宝典2013版(超长版),抽象类是否可继承实体类

    一. Java基础部分......................................................................................... ...

  9. 复习Java第二个项目仿QQ聊天系统 03(两种通信类、登录以及注册功能完善) Java面试题并发编程相关知识生活【记录一个咸鱼大学生三个月的奋进生活】025

    记录一个咸鱼大学生三个月的奋进生活025 复习Java(仿QQ聊天系统03两种通信类.登录以及注册功能完善) TcpSocket类(与服务器进行通信) Server类(服务器类) TcpMessage ...

最新文章

  1. linux删除mysql安装_Linux安装删除MySQL
  2. 前端开发使用工具 gulp
  3. 锁定弹出层(jquery语法)
  4. Java多线程之Callable、Future和FutureTask
  5. Linux中find命令详解
  6. Flask部署| gunicorn、nginx部署flask项目,并用supervisor来管理进程
  7. 计算机考研英语有听力吗,考研英语有听力吗
  8. 六个重要的.NET概念:栈、堆、值类型、引用类型、装箱和拆箱
  9. python和c++哪个好-Scratch和Python与C++选哪个合适
  10. 最大子数列和的问题求解
  11. R中统计假设检验总结
  12. [RK3288][Android6.0] 如何配置MIPI DSI Clock和PCLK
  13. java中访问权限控制顺序_Java中的四种访问权限控制 | 学步园
  14. 2021 年系统分析师下午真题及答案
  15. Qt之QTcpSocket 跨线程连续发送大数据
  16. 电商行业短信平台选择,电商行业短信通道选择考虑的问题
  17. mysql的建表赋权_mysql创建用户并赋权
  18. 腾讯投资“差评”遭舆论讨伐,或被迫退股!!
  19. Fortran文件操作-open
  20. 3070网卡驱动linux教程,Ubuntu 12.04下RT5370无线网卡驱动安装

热门文章

  1. C++编程思想:模板
  2. opengl glad.h和 glu.h
  3. 算法设计:动态规划问题
  4. java.lang.ExceptionInInitializerError的原因
  5. 如何线程安全地遍历List:Vector、CopyOnWriteArrayList
  6. goroutine, channel 和 CSP
  7. LVS nat 负载均衡实验
  8. Android官方导航栏ActionBar(二)—— Action View、Action Provider、Navigation Tabs的详细用法...
  9. Common Trace Format
  10. Struts1.2+Spring2.5+Hibernate3.2框架搭建(十五)