`

java 基础知识复习(六)

    博客分类:
  • java
阅读更多
                                 (六)




1. 当向ArrayList添加一个对象时,实际上就是将该对象放置到了ArrayList底层所维护的数组当中;当向LinkedList中添加一个对象时,实际上LinkedList内部会生成一个Entry对象,该Entry对象的结构为:

Entry
{
Entry previous;
Object element;
Entry next;
}
其中的Object类型的元素element就是我们向LinkedList中所添加的元素,然后Entry又构造好了向前与向后的引用previous、next,最后将生成的这个Entry对象加入到了链表当中。换句话说,LinkedList中所维护的是一个个的Entry对象。
2. 关于Object类的equals方法的特点
a) 自反性:x.equals(x)应该返回true
b) 对称性:x.equals(y)为true,那么y.equals(x)也为true。
c) 传递性:x.equals(y)为 true并且y.equals(z)为true,那么x.equals(z)也应该为true。
d) 一致性:x.equals(y)的第一次调用为true,那么x.equals(y)的第二次、第三次、第n次调用也应该为true,前提条件是在比较之间没有修改x也没有修改y。
e) 对于非空引用x,x.equals(null)返回false。
3. 关于Object类的hashCode()方法的特点:
a) 在Java应用的一次执行过程当中,对于同一个对象的hashCode方法的多次调用,他们应该返回同样的值(前提是该对象的信息没有发生变化)。
b) 对于两个对象来说,如果使用equals方法比较返回true,那么这两个对象的hashCode值一定是相同的。
c) 对于两个对象来说,如果使用equals方法比较返回false,那么这两个对象的hashCode值不要求一定不同(可以相同,可以不同),但是如果不同则可以提高应用的性能。
d) 对于Object类来说,不同的Object对象的hashCode值是不同的(Object类的hashCode值表示的是对象的地址)。
4. 当使用HashSet时,hashCode()方法就会得到调用,判断已经存储在集合中的对象的hash code值是否与增加的对象的hash code值一致;如果不一致,直接加进去;如果一致,再进行equals方法的比较,equals方法如果返回true,表示对象已经加进去了,就不会再增加新的对象,否则加进去。
5. 如果我们重写equals方法,那么也要重写hashCode方法,反之亦然。
6. Map(映射):Map的keySet()方法会返回key的集合,因为Map的键是不能重复的,因此keySet()方法的返回类型是Set;而Map的值是可以重复的,因此values()方法的返回类型是Collection,可以容纳重复的元素。
分享到:
评论

相关推荐

    Java基础知识复习资料.rar

    这份“Java基础知识复习资料”涵盖了学习Java编程所必需的关键概念和技术,旨在帮助初学者巩固基础,同时也适合有经验的开发者进行回顾。 1. **Java语法基础** - **变量与数据类型**:Java提供了基本数据类型(如...

    Java基础知识复习资料.doc

    Java基础知识复习资料

    JAVA基础知识复习题

    【JAVA基础知识复习题】 在Java编程语言中,基础知识点涵盖了语法、类与对象、异常处理、线程等多个方面。以下是对这些知识点的详细解释: 1. **编译与执行过程**: Java源代码(`.java`文件)通过Java编译器...

    JAVA理论知识基础复习

    JAVA理论知识基础复习是指对JAVA语言的基础知识进行复习和总结,本文将涵盖构造方法、new关键字、方法的重载、特殊变量this、static定义常量、继承、方法的重写、特殊变量super、多态性等相关知识点。 一、构造方法...

    Java基础知识复习.docx

    Java 基础知识复习 本文将对 Java 基础知识进行详细的讲解,涵盖了 Java 的基本概念、语法、数据类型、变量、类型转换等方面。 1. Java 基本概念 Java 是一种面向对象的编程语言,具有平台独立性、简单性、分布式...

    java基础知识大全(必看经典)

    Java 基础知识大全 本资源摘要信息是 Java 基础知识大全的总结,涵盖了 Java 语言的基本概念、特点、历史发展等方面的知识点。以下是本资源摘要信息的详细内容: 一、 Java 语言的特点 * 面向对象:Java 语言是...

    corejava基础知识复习与总结

    ### Java基础知识复习与总结 #### 变量与方法 在Java中,对于实例变量,如果没有显式地赋值,那么会根据其数据类型自动获得一个默认值:数值型变量为0,布尔型变量为`false`,引用类型的变量为`null`。然而,局部...

    java基础知识复习内容总结

    基本的复习资料总结,没有重点,个个都经典的题目。一般都涉及到得问题,有一些还常用于面试问题中。

    java基础知识复习资料

    Java是一种强类型语言,这意味着在编写Java代码时,变量必须先声明并初始化...以上是对Java基础知识的一些关键点的详细解释,涵盖了类型系统、变量、访问控制和一些核心特性。这些内容对于理解Java编程的基础至关重要。

    java 基础知识总结

    自己在网上找的相对好一点的java复习资料,留个纪念 。详细讲述了Java课程的知识点

    Java基础考试复习资料

    这份"Java基础考试复习资料"涵盖了初学者需要理解的重要概念,旨在帮助广大备考者有效地准备Java相关的考试。以下是一些关键知识点的详细说明: 1. **Java简介**:Java是由Sun Microsystems公司开发的一种跨平台、...

    Java基础知识点复习资料

    Java基础知识点复习资料 Java是当前最流行的编程语言之一,本文将对Java基础知识点进行总结和复习,包括类路径的设置、-path的设置、Java数据类型、基本运算符号、控制语句、数组、方法、重载、类的定义、对象的...

    Java基础知识复习01:从基础知识---面向对象.pdf

    Java基础知识包括Java语言的基本构成、编程规范、面向对象的概念等,而面向对象是Java语言的核心特性之一,本篇文章将从Java基础知识和...通过以上内容的梳理,希望能够帮助Java初学者更好地复习和掌握Java基础知识。

    Java基础知识,复习巩固

    Java基础知识是IT行业中不可或缺的一部分,尤其对于初学者和有经验的开发者来说,不断复习和巩固这些概念至关重要。Java 7是Java编程语言的一个重要版本,它包含了许多改进和新特性,比如Try-with-resources语句、多...

    java基础复习文档

    ### Java基础复习知识点详解 #### 开发中的注意事项 在Java编程初期,经常会出现一些常见的错误...以上是对Java基础复习文档中提及的知识点进行了详细解释和补充,希望能帮助初学者更好地理解和掌握Java的基础知识。

    JAVA基础知识电子书=最终版

    本电子书主要包括以下内容: JAVA核心知识点:基本内容、类的特性、类的高级应用... ...本书可用来复习时或者面试前的准备,可帮助自己回顾一些知识点。 希望能给大家多多少少起点帮助作用 ^o^.....

    Java基础知识点复习资料.pdf

    Java 基础知识点复习资料 本文将对 Java 基础知识点进行详细的总结和介绍,涵盖了 Java 的基本语法、数据类型、运算符、控制语句、数组、方法、类、对象等方面的知识点。 一、 classpath 和 path 的设置及作用 在...

Global site tag (gtag.js) - Google Analytics