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基础知识复习资料”涵盖了学习Java编程所必需的关键概念和技术,旨在帮助初学者巩固基础,同时也适合有经验的开发者进行回顾。 1. **Java语法基础** - **变量与数据类型**:Java提供了基本数据类型(如...
【JAVA基础知识复习题】 在Java编程语言中,基础知识点涵盖了语法、类与对象、异常处理、线程等多个方面。以下是对这些知识点的详细解释: 1. **编译与执行过程**: Java源代码(`.java`文件)通过Java编译器...
Java基础知识复习资料
Java 基础知识复习 本文将对 Java 基础知识进行详细的讲解,涵盖了 Java 的基本概念、语法、数据类型、变量、类型转换等方面。 1. Java 基本概念 Java 是一种面向对象的编程语言,具有平台独立性、简单性、分布式...
### Java基础知识复习与总结 #### 变量与方法 在Java中,对于实例变量,如果没有显式地赋值,那么会根据其数据类型自动获得一个默认值:数值型变量为0,布尔型变量为`false`,引用类型的变量为`null`。然而,局部...
Java是一种强类型语言,这意味着在编写Java代码时,变量必须先声明并初始化...以上是对Java基础知识的一些关键点的详细解释,涵盖了类型系统、变量、访问控制和一些核心特性。这些内容对于理解Java编程的基础至关重要。
基本的复习资料总结,没有重点,个个都经典的题目。一般都涉及到得问题,有一些还常用于面试问题中。
Java基础知识包括Java语言的基本构成、编程规范、面向对象的概念等,而面向对象是Java语言的核心特性之一,本篇文章将从Java基础知识和...通过以上内容的梳理,希望能够帮助Java初学者更好地复习和掌握Java基础知识。
JAVA理论知识基础复习是指对JAVA语言的基础知识进行复习和总结,本文将涵盖构造方法、new关键字、方法的重载、特殊变量this、static定义常量、继承、方法的重写、特殊变量super、多态性等相关知识点。 一、构造方法...
### Java基础知识复习 #### 1. 使用快捷键设置菜单项加速器 在Java Swing中,为菜单项设置快捷键(加速器)是一种常见的用户界面设计模式。这有助于提高应用程序的可用性,并允许用户通过键盘快速访问菜单选项。 #...
Java 基础知识大全 本资源摘要信息是 Java 基础知识大全的总结,涵盖了 Java 语言的基本概念、特点、历史发展等方面的知识点。以下是本资源摘要信息的详细内容: 一、 Java 语言的特点 * 面向对象:Java 语言是...
自己在网上找的相对好一点的java复习资料,留个纪念 。详细讲述了Java课程的知识点
这份"Java基础考试复习资料"涵盖了初学者需要理解的重要概念,旨在帮助广大备考者有效地准备Java相关的考试。以下是一些关键知识点的详细说明: 1. **Java简介**:Java是由Sun Microsystems公司开发的一种跨平台、...
Java基础知识点复习资料 Java是当前最流行的编程语言之一,本文将对Java基础知识点进行总结和复习,包括类路径的设置、-path的设置、Java数据类型、基本运算符号、控制语句、数组、方法、重载、类的定义、对象的...
Java基础知识是IT行业中不可或缺的一部分,尤其对于初学者和有经验的开发者来说,不断复习和巩固这些概念至关重要。Java 7是Java编程语言的一个重要版本,它包含了许多改进和新特性,比如Try-with-resources语句、多...
### Java基础复习知识点详解 #### 开发中的注意事项 在Java编程初期,经常会出现一些常见的错误...以上是对Java基础复习文档中提及的知识点进行了详细解释和补充,希望能帮助初学者更好地理解和掌握Java的基础知识。