Collection
|--List 有序,可重复
|--ArrayList
底层数据结构是数组,查询快,增删慢。
线程不安全,效率高
|--Vector
底层数据结构是数组,查询快,增删慢。
线程安全,效率低
|--LinkedList
底层数据结构是链表,查询慢,增删快。
线程不安全,效率高
|--Set 无序,唯一
|--HashSet
底层数据结构是哈希表。
如何保证元素唯一性的呢?
依赖两个方...
分类:
其他好文 时间:
2015-08-05 18:28:38
阅读次数:
160
Lombok 是一种 Java? 实用工具,可用来帮助开发人员消除 Java 的冗长,尤其是对于简单的 Java 对象(POJO)。它通过注释实现这一目的。通过在开发环境中实现 Lombok ,开发人员可以节省构建诸如 hashCode() 和 equals() 这样的方法以及以往用来分类各种 ac...
分类:
其他好文 时间:
2015-07-31 21:44:22
阅读次数:
173
一、什么是Map?在讲解Map排序之前,我们先来稍微了解下map。map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等。其中这四者的区别如下(简单介绍): HashMap:我们最常用的Map,它根据key的HashCode ...
分类:
编程语言 时间:
2015-07-31 14:31:14
阅读次数:
155
介绍Object 中的equals与hashCode方法...
分类:
其他好文 时间:
2015-07-30 23:27:08
阅读次数:
206
HashMap原理
HashMap是Map的一个常用的子类实现。其实使用散列算法实现的。
HashMap内部维护着一个散列数组(就是一个存放元素的数组),我们称其为散列桶,而当我们向HashMap中存入一组键值对时,HashMap首先获取key这个对象的hashcode()方法的返回值,然后使用该值进行一个散列算法,得出一个数字,这个数字就是这组键值对要存入散列数组中的下标位置。
那么得知了下...
分类:
编程语言 时间:
2015-07-25 22:58:43
阅读次数:
250
一:GetHashCode
从MSDN上可以看到的解释是:用作特定类型的哈希函数,也就是说任何对象的实例都会有一个int32类型的HashCode,并且存放在FCL中的
HashCollection中,废话不说,看个例子:
从图中可以看到,两个类实例的hashcode不同,说明二者不是同一个引用,也就有了不同的hashcode,利用这个特性,我们是不是
可以生成...
0 Java的hashCode方法概述 In theJavaprogramming language, everyclassimplicitly or explicitly provides ahashCode()method, which digests the data stored in a....
分类:
编程语言 时间:
2015-07-24 20:09:36
阅读次数:
130
public class JavaTestDemo1 {
public static void main(String[] args) {
Integer v1 = new Integer(1);
Integer v2 = v1;
doSomething(v2);
System.out.println(v2);
System.out.println(v1 == v2);
...
分类:
编程语言 时间:
2015-07-23 12:05:54
阅读次数:
111
==是运算符,用于比较两个变量是否相等。
equals,是Objec类的方法,用于比较两个对象是否相等,默认Object类的equals方法是比较两个对象的地址,跟==的结果一样。Object的equals方法如下:
public boolean equals(Object obj) {
return (this == obj);
}
hashCode也是Object类的一个方法。返回一个离散的int型整数。在机会类操作中使用,为了提高查询速度。(HashMap,Has...
分类:
编程语言 时间:
2015-07-21 18:47:33
阅读次数:
114
概述在我们使用类集框架(比如使用hashMap、hashSet)的时候,经常会涉及到重写equals()和hashCode()这两个方法。
这两个方法的联系是:
1. 如果两个对象不同,那么他们的hashCode肯定不相等;
2. 如果两个对象的hashCode相同,那么他们也未必相等。
所以说,如果想在hashMap里面让两个不相等的对象对应同一个值,首先需要让他们的hashCod...
分类:
编程语言 时间:
2015-07-18 18:42:13
阅读次数:
136