Java高级特性
程序员文章站
2024-02-29 12:47:58
1、hashmap与hashtable的区别:
hashmap类是基于哈希表的 map 接口的实现。它提供所有可选的映射操作,并允许使用 null 值和 null 键...
1、hashmap与hashtable的区别:
hashmap类是基于哈希表的 map 接口的实现。它提供所有可选的映射操作,并允许使用 null 值和 null 键。但此类不保证映射的顺序,特别是它不保证该顺序恒久不变。hashtable类实现一个哈希表,该哈希表将键映射到相应的值。任何非 null 对象都可以用作键或值。在java集合框架中,有些类是线程同步安全的类,它们是vector、hashtable、stack、enumeration。hashmap类是基于哈希表的 map 接口的实现。它提供所有可选的映射操作,并允许使用 null 值和 null 键。但此类不保证映射的顺序,特别是它不保证该顺序恒久不变。hashtable类实现一个哈希表,该哈希表将键映射到相应的值。任何非 null 对象都可以用作键或值。另外,在java集合框架中,有些类是线程同步安全的类,它们是vector、hashtable、stack、enumeration。
2、java.util.random().nextint(10)+1),能够随机到9,所以输出值可能为10。
3、用“+”运算符连接字符串和int/double类型数据,”+”将int/double类型数据自动转化成string类型.string类型数据前面的int/double类型数据先运算,再转化为string类型.
4、 线程安全类的方法是同步的,每次只能一个访问,它们是重量级对象,效率较低。对于非线程安全的类和接口,在多线程中需要程序员自己处理线程安全问题。
5、每个字符的字符长度是1,空格字符长度也是1,英文符号字符长度也是1。