不可变的好处

1、可以缓存hash值

因为String的hash值经常被使用,例如String用作HashMap的key。不可变的特性可以使得hash值也不可变,因此只需要进行一次计算。

2、String Pool的需要

字符串常量池,如果一个String对象已经被创建过了,那么会从String Pool中取得引用。只有String是不可变的,才可能使用String Pool。

3、安全性

String经常作为参数,String不可变性可以保证参数不可变。

4、线程安全

String不可变性天生具备线程安全,可以在多个线程中安全地使用。

上一篇:从入门到精通系列Java高级工程师路线介绍,王者笔记!


下一篇:NTP服务器搭建