摘要: 散列冲突的解决办法: 1.开放地址法 (1)线性探测法: 就是一个公式: H=(H0+D)%m m:散列表的长度。D:一个增长的序列:1,2,3..........m-1 。 H0就是准备存入的Hash(key)。H:不冲突的散列码对应的位置。 假如散列表长为5,那么10%5=0,10这个值对应的散 阅读全文
posted @ 2017-06-05 17:20 chump 阅读(502) 评论(0) 推荐(0) 编辑
摘要: 1、String类型的字符串对象是不可变的,一旦String对象创建后,包含在这个对象中的字符系列是不可以改变的,直到这个对象被销毁。 2、StringBuilder和StringBuffer类型的字符串是可变的,不同的是StringBuffer类型的是线程安全的,而StringBuilder不是线 阅读全文
posted @ 2017-06-05 14:56 chump 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 集合中线程安全的类:vector,stack,Hashtable,enumeration,除此之外均是非线程安全的。 java中true ,false , null在java中不是关键字,也不是保留字,它们只是显式常量值,但是你在程序中不能使用它们作为标识符。 其中const和goto是java的保 阅读全文
posted @ 2017-06-05 14:55 chump 阅读(138) 评论(0) 推荐(0) 编辑
摘要: Vector也是基于数组实现的,是一个动态数组,其容量能自动增长。 它的很多实现方法都加入了同步语句,因此是线程安全的,(相对安全,有些情况还是要加入同步语句来保证线程安全的)可以用于多线程环境。 Vector没有实现Serializable接口,因此它不支持序列化,实现了Cloneable接口,能 阅读全文
posted @ 2017-06-05 14:53 chump 阅读(136) 评论(0) 推荐(0) 编辑