是否线程安全
1.HashMap可以存放null
HashTable不能存放null
2.HashMap是线程不安全的
HashTable是线程安全的
StringBuffer和StringBuilder的区别
-
StringBuffer 是线程安全的
-
StringBuilder 是非线程安全的
所以当进行大量字符串拼接操作的时,如果是单线程就用StringBuilder,效率高,会更快些,如果是多线程,就需要用StringBuffer 保证数据的安全性
ArrayList和Vector的区别
都继承了AbstractList类,实现了 List<E>, RandomAccess, Cloneable, java.io.Serializable接口,
-
Vector是线程安全的类
-
ArrayList是非线程安全的
借助Collections.synchronizedList,可以把ArrayList转换为线程安全的List。