/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不一致,元素不可以重复 * (通过哈希值来判断是否是同一个对象) * ----HashSet:底层数据结构是哈希表, * 保证数据唯一性的方法是调用存入元素的hashCode()方法 * 和equals(Obj...
分类:
编程语言 时间:
2015-01-22 15:11:21
阅读次数:
180
HashMap
如果有重复的key,则将旧数据进行替换,允许设置key和value为null,key存放是乱序的,线程非同步,访问速度快,因为它根据key的HashCode 值来存储数据
public static void main(String[] args) {
System.out.println("************************* HashMap ********...
分类:
其他好文 时间:
2015-01-21 18:18:43
阅读次数:
216
在学习java基本数据类型和复杂数据类型的时候,特别是equals()"=="和hashcode()部分时,不是很懂,也停留了很长时间,最后终于有点眉目了。要理解equals()"=="和hashcode(),最好先了解Java内存中堆和栈的知识:下面一段是参考自http://www.cnblogs...
分类:
编程语言 时间:
2015-01-18 22:20:18
阅读次数:
266
1.何时需要重写equals()当一个类有自己特有的 ”逻辑相等”概念(不同于对象身份的概念)。2.设计equals()[1]使用instanceof操作符检查”实参是否为正确的类型”。[2]对于类中的每一个”关键域”,检查实参中的域与当前对象中对应的域值。 [2.1]对于非float和doubl....
分类:
编程语言 时间:
2015-01-12 16:00:24
阅读次数:
146
/*object类,所有的类都继承object类tostring()对象的字符串的描述hashcode()返回对象的哈希码equals()判断两个对象内容是否相等重写equals()方法,必须重写hashcode()方法clone()创建并返回此对象的副本要想一个类的对象能够克隆,必须实现两点1:实...
分类:
其他好文 时间:
2015-01-09 22:11:37
阅读次数:
149
Object的hashCode()方法,返回的是当前对象的内存地址。以下内容总结自《EffectiveJava》。1.何时需要重写equals()当一个类有自己特有的“逻辑相等”概念(不同于对象身份的概念)。2.设计equals()[1]使用instanceof操作符检查“实参是否为正确的类型”。[2]对于类中的每一个“..
分类:
其他好文 时间:
2015-01-06 07:27:40
阅读次数:
262
由于Hashtable内部自带有排序(根据Key的HashCode来进行的),因此有时在使用Hashtable时就会造成数据顺序不可控的情况,有两种办法可以解决,测试代码:Dictionaryht=newDictionary();ht.Add("http://www.sina.com.cn","")...
分类:
其他好文 时间:
2015-01-05 00:26:33
阅读次数:
192
先来看下Object源码里hashcode方法: /** * Returns a hash code value for the object. This method is * supported for the benefit of hashtables such as those provi....
分类:
编程语言 时间:
2015-01-04 16:47:29
阅读次数:
216
联合主键就是将几个字段都作为主键,或者说一个以上主键的都可作为联合主键或者复合主键,开发联合主键实体类对象必须做到三个要求,一是提供一个无参构造函数,二是必须实现序列化串行接口,三是必须重写HashCode和equals方法,参数是复合主键的属性。这里我们的实例用航班做,我们知道航班有起始地,也有终止点,他们有一个共同的航班名,所以可以用联合主键来做表设计,具体看代码。
首先定义航线实体:
/...
分类:
其他好文 时间:
2015-01-04 10:09:11
阅读次数:
161