分享几点不为人知的Java高级特性?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
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。
用“+”运算符连接字符串和int/double类型数据,”+”将int/double类型数据自动转化成String类型.String类型数据前面的int/double类型数据先运算,再转化为String类型.
线程安全类的方法是同步的,每次只能一个访问,它们是重量级对象,效率较低。对于非线程安全的类和接口,在多线程中需要程序员自己处理线程安全问题。
每个字符的字符长度是1,空格字符长度也是1,英文符号字符长度也是1。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网行业资讯频道,感谢您对编程网的支持。