12.内存地址与hashcode关系。
每当new一个对象,则一定会开辟一份新的内存空间,该空间则由一个唯一的地址码指代。
对于Object对象,hashcode与内存地址唯一映射,hashcode由确定的算法通过内存对象产生。
如果重写了hashcode,则hashcode就未必与内存地址有关系了。
1.==与equals区别,
==比较内存地址(非hashCode)。
未重写equals方法的对象比较内存地址。
重写了equals方法的对象根据重写的条件来定。
e1):下列输出false是因为内存地址不一样
Integer i1=new Integer(1);
Integer i2=new Integer(1);
System.out.println(i1==i2);
Integer i3=1234567;
Integer i4=1234567;
System.out.println(i3==i4);
e2)下列输出true是因为数字[-128,127]之间装箱会使用缓存对象
Integer i3=123;
Integer i4=123;
System.out.println(i3==i4);
2.map中的key如何比较相等:
用对象的equals方法。
2.Long是否适合做map的key
适合,因为Long重写了equals方法,longValue相等的两个Long对象equals必相等,而map的key正是通过equals方法识别是否相等。
3.Integer是否适合做map的key.
适合,因为Integer重写了equals方法,longValue相等的两个Long对象equals必相等,而map的key正是通过equals方法识别是否相等。
4.比较两个Long是否相等。
equals
5.Integer比较大小。
equals
6.Long与Integer比大小
转换成基本类型再比较。
7.Long与Integer相互转换。
1)Integer转为Long
Integer i5=12345678;
Long i6=i5.longValue();
2)Long转为Integer
Long i5=12345678L;
Integer i6=i5.intValue();
3)将long型转化为int型,这里的long型是基础类型:
long a = 10;
int b = (int)a;
4)int 转化为Long
int a = 10;
long b = a;
8.new与非new的区别。
String s5="abc";
String s6="abc";
System.out.println(s5==s6);
String s8=new String("abc");
System.out.println(s5==s8);
因为 String s5="abc"; 是从常量池中拿。
new String("abc")是新开辟内存空间,一般不用这种方式。
10.解释integer与Long的128问题。
-128到127间的值北放到了一个数组中,即代码中的LongCache.cache[]/IntegerCache.cache[],所以我们拿到的是同一个实例,同理其他大类型也是相同,能够在看下Integer验证下
11.对象属性应该用基本类型还是包装类型?
建议使用包装类型,包装类型有NULL,可以区分出是否赋值了。
当基本类型为0时候,就无法直接判断是因为初始值给的0还是赋值给了0.
如何比较两个Double是否相等?
如何比较两个Float是否相等?
Inter与Double互相转换?
Long与Double互相装换?
Double与Float互相转换?
Double与Float精度比较及适用场景?
Byte的特点及适用场景有哪些?
BigDecimal的应用场景有哪些?
分享到:
相关推荐
Java基础知识复习资料.rar
JAVA基础知识复习面试笔试宝典
Java基础知识复习资料
Java基础知识复习资料。该资料全面的总结了java基础知识,以图表的形式为读者理清思路。重点明确,知识全面,值得一读。
java基础知识复习资料.doc
Java基础知识复习01:从基础知识---面向对象
题目大多是很基础的东西,对于复习JAVA基础知识很有帮助!
Java基础知识复习02:从修饰符到反射注解(续01)
java基础知识的总结文档,总结的挺好的,拿出来共享下!
基本的复习资料总结,没有重点,个个都经典的题目。一般都涉及到得问题,有一些还常用于面试问题中。
当然了,你要会一些才可以,可以说是复习资源吧
全面的复习内容:这份资源提供了全面的Java基础知识复习内容。从基本的数据类型、控制结构、函数和对象导向编程(OOP)原则,到异常处理、多线程编程和集合框架,所有这些核心主题都得到了详细的涵盖。 清晰的总结...
JAVA理论知识基础复习 构造方法 new关键字 方法的重载 特殊变量this 关键字static 定义常量 继承 方法的重写 特殊变量super 多态性 等相关知识点总结
java基础知识大全(必看经典),里面包含了最基本的java基础知识,适合学习java的初学者和想要复习java基础的同学。
Java基础知识复习点,整理出来给大家备考只用
Java基础知识点复习资料