HashMap 键是Student值 是String 的案例 键是Student, 如果不重写,则键肯定不一致, 所以需要重写键对象的hashcode() equals() LinkedHashMap 底层是链表,怎么存怎么取 TreeMap 键如果是自定义对象,则该对象必须有比较的功能 ...
分类:
其他好文 时间:
2019-08-06 00:37:51
阅读次数:
103
1、java中的集合分为value、key value(conllection map)两种 2、存储值分别有List和Set list是有序打的,可以重复的 set是无序的,不可以重复的,根据equals和hashcode判断,也就是如果一个对象要存储在set中,必须重写equals和hashco ...
分类:
编程语言 时间:
2019-08-05 15:41:02
阅读次数:
115
一、equals 对象之间的比较用==,比较的是两个对象的引用,对象通过引用才能到Java堆里面找到对应的对象实例。 基本类型(byte、short、int、long、double、float、boolean、char,String不是基本类型) 而两个字符串(非直接或间接通过new关键字创建)相同 ...
分类:
其他好文 时间:
2019-08-04 19:24:46
阅读次数:
87
关于HashMap的数据结构:采用散列表的数据结构,链表+数组,数组Array,所存储的元素并非基本数据类型,而是Entry(内含键值对),包括的数据域(键,值,next), 其计算方法: key.hashcode()%Array[].length HashMap虽然是一个很好用的集合,但是而有一个 ...
分类:
其他好文 时间:
2019-08-02 22:46:15
阅读次数:
130
hashmap 线程不安全,可以存入null,key不可重复(怎么实现不可重复呢?),values可以重复, 实现的时在数组中用key值通过hashcode来存一位置,如果key值相同就通过链表把其连接起来,如果长度大于8的时候就是用红黑树 常用方法,keySet,EntrySet,values,p ...
分类:
其他好文 时间:
2019-08-02 20:01:21
阅读次数:
101
一、hashCode 与 equals (重要) 面试官可能会问你:“你重写过 hashcode 和 equals 么,为什么重写equals时必须重写hashCode方法?” 1.1、hashCode()介绍 hashCode() 的作用是获取哈希码,也称为散列码;它实际上是返回一个int整数。这 ...
分类:
编程语言 时间:
2019-08-01 11:45:24
阅读次数:
94
栈:是一个后进先出(LIFO)的容器 栈 push()方法在栈中添加元素,用Pop()方法获取最近添加的元素。 于Queue<T>类相似,Stack<T>类实现IEnumerable<T>和ICollection接口 Count 返回栈中的元素个数 Push 在栈顶添加一个元素 Pop 从站定删除一 ...
HashMap根据键的hashCode值存储数据,大多数情况下可以直接定位到它的值,因而具有很快的访问速度,但遍历顺序却不是确定的,HashMap最多只允许一条记录的键为null,允许多条记录的值为null,HashMap非线程安全,即任一时刻可以有多个线程同时写HashMap,可能会导致数据的不一 ...
分类:
编程语言 时间:
2019-07-30 23:26:17
阅读次数:
183
Lombok 是一种 Java 实用工具,可用来帮助开发人员消除Java的冗长代码,尤其是对于简单的Java对象(POJO)。它通过注释实现这一目的。通过在开发环境中实现 Lombok,开发人员可以节省构建诸如hashCode()和equals()这样的方法以及以往用来分类各种accessor和mu... ...
分类:
编程语言 时间:
2019-07-28 17:40:41
阅读次数:
120
通过实体部分属性判断相等或比较大小 1. 判断自定义的实体的实例相等 a) 重写 hashCode() 和 equals() 两个方法 b) 具体举例: 2. 通过部分属性(一个或多个字段)比较实体实例的大小 1) 让自定义类实现Comparable接口 实现Comparable接口并重写compa ...
分类:
其他好文 时间:
2019-07-28 13:46:31
阅读次数:
148