- 博客(6)
- 资源 (1)
- 收藏
- 关注
原创 JAVA集合Map集合详解之HashMap/hashTable
Map是映射键值的对象。map不能包含重复键:每个键最多只能映射一个值。它模拟了数学函数的抽象。Map接口包括基本操作的方法(如put、get、remove、containsKey、containsValue、size和empty)、批量操作(如putAll和clear)和集合视图(如keySet、entrySet和values)。Java平台包含三个通用的映射实现:HashMap、TreeMap...
2018-05-31 17:29:05 1864
原创 JAVA集合Set之LinkedHashSet详解
LinkedHashSet是Set集合的一个实现,具有set集合不重复的特点,同时具有可预测的迭代顺序,也就是我们插入的顺序。并且linkedHashSet是一个非线程安全的集合。如果有多个线程同时访问当前linkedhashset集合容器,并且有一个线程对当前容器中的元素做了修改,那么必须要在外部实现同步保证数据的冥等性。下面我们new一个新的LinkedHashSet容器看一下具体的源码实现。...
2018-05-30 15:52:03 106424 11
原创 java 集合之TreeSet详解
首先说明一下,之前看了一下文章提出TreeSet在添加第一个元素的时候是不比较大小的,这种说发是错误的,在第一次添加的时候比较的是第一个对象本省返回的参数是0,下面我们用程序验证一下:首先由一个Student的内部类:里面有两个参数,年龄和名称我们后期自定义排序也是用得到的。然后我们把这个对象添加到TreeSet中,构建一个无参数的TreeSet。这样添加我们是能看到程序报错:然后我们写一个自定义...
2018-05-29 18:25:31 42898 1
原创 JAVA集合Set之HashSet详解
HashSet这个类实现了Set集合,实际为一个HashMap的实例。并且HashSet提供了三个构造函数
2018-05-28 15:33:34 170126 10
原创 Set集合详解
定义:一个set集合不能包含重复的元素,set实现Collection并增加了hashCode和equals方法。set不允许存储值相同的元素,原因为在取值的时候set依靠的是元素本身取值。由于set提供了hashCode和Equals方法,所以set支持比较。set主要实现HashSet,TreeSet,LinkedHashSet(后面会分别以不同的文章介绍着三种实现)set允许存储一个null...
2018-05-28 11:38:59 7638
原创 hashCode算法分析String和Integer
String 中hashCode的具体实现方式:看一下创建这个string对象的过程和赋值,String源码中有一个有参数的构造函数:其中 String str = "strsf"; == String str = new String("strsf");这样我们调用的是String的有参数据构造函数所有 value 为一个char类型的数组:所以我们可以看作为:this.value = ar...
2018-05-27 22:51:15 1427 3
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人