java
Timor好心情
这个作者很懒,什么都没留下…
展开
-
Maven生成javadoc
1.pom配置<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.9.1</version> <configuration> <reportOutputDirectory>../java原创 2015-10-22 14:02:16 · 7939 阅读 · 1 评论 -
Java基础-了解Hashtable
Hashtable和HashMap都是Map接口的实现类,方法是一样的,实现也差不多,主要说下不同*Hashtable线程安全,HashMap非线程安全。 Hashtable主要是在各个关键操作(put、putAll、get等)加了synchronized关键字来保证线程安全。这样也导致了Hashtable效率要低些。*Hashtable不允许null值,HashMap允许 //Hashtable原创 2016-01-22 14:12:14 · 479 阅读 · 0 评论 -
Java基础-了解ConcurrentHashMap
ConcurrentHashMap跟Hashtable一样,是一个线程安全的Map,但是效率要比Hashtable要好不少。因为Hashtable是对整个table进行加锁,所有线程抢一把锁;ConcurrentHashMap里面多了一个Segment内部类,entry的链表搬到了segment里面来了,每次get、put操作的时候,多线程操作同一个segment的时候才会发生锁竞争。据说在进行扩容原创 2016-01-22 16:16:44 · 550 阅读 · 0 评论 -
Java基础-了解HashMap
1.存储结构 图片来自百度百科首先HashMap对象里面有一个数组,叫table,用于存储entry的头节点 /** * The table, resized as necessary. Length MUST Always be a power of two. */ transient Entry<K,V>[] table = (Entry<K,V>[]) EMPTY_TABLE;这原创 2016-01-21 22:36:59 · 645 阅读 · 0 评论 -
Java基础-了解HashSet
1.HashSet是基于HashMap实现的,所以具有唯一、无序、非线程安全的特点。key是set里面的值,value是同一个Object对象 “PRESENT “ // Dummy value to associate with an Object in the backing Map private static final Object PRESENT = new Obje原创 2016-01-28 15:52:23 · 565 阅读 · 0 评论 -
Java常用工具类
1.基于netty的web聊天系统【2016-02-15】功能:支持群聊 支持单聊 支持@成员 支持单聊离线信息初衷:熟悉netty。mina和netty都是类似的产品,出自同一个人,netty后出,而且迭代更快。所以不去看mina了。 本来设计的是还有用户列表什么的,想了下都是些无关的功能,不要做的复杂,否则又半途而废了。预计完成原创 2016-02-16 15:16:58 · 652 阅读 · 0 评论 -
java.lang.Integer cannot be cast to java.lang.String
Object a = 5;System.out.println((String)a);//不是同种类型,无法强转System.out.println(String.valueOf(a));运行上面的代码在第二行就会报这个错误,一眼看去会觉得很奇怪,觉得5肯定能转换成String类型的啊,其实不然,你觉得可以转换成string类型只是a.toString()的结果为“5”。为什么会报错呢?因为类型原创 2016-02-17 11:23:29 · 9117 阅读 · 1 评论 -
Java基础-排序算法
1.冒泡排序/** * 冒泡排序算法 * <p/> * 依次把第i个元素与 i+1到arr.length的元素进行比较,发现有比i更小(大)的元素的话,则进行位置替换 * <p/> * 第i次遍历,保证i是 i+1到arr.length里面最小(大)的元素 * * 时间复杂度O(n*n) */ public vo原创 2016-03-20 14:33:01 · 534 阅读 · 0 评论