final、finally、finalize的区别及使用场景
final、finally、finalize的区别及使用场景?
final、finally、finalize的区别及使用场景?
为什么 float 和 double 不能用来表示金额?一句话:浮点数的运算会有精度丢失的风险!
Java 中哪些类是不可变的?String/Integer/ 包装类全解析
String类为什么是不可变的
Java 中 String 类的「不可变」,指的是:一个 String 对象一旦被创建成功,它的「字符内容」和「内存地址」就永远无法被修改。
我们平时写的 String str = "abc"; str = "def"; 并不是修改了原对象,而是创建了一个新的 String 对象,把变量的引用指向了新对象,原对象 "abc" 纹丝不动
4.1 大幅度节省内存
4.2 保证【哈希值唯一不变】,提升 HashMap 等集合的效率
4.3 天生【线程安全】,多线程环境下无并发问题
4.4 保证【数据安全性】,防止核心数据被恶意篡改
String、Integer/Byte/Short/Long/Boolean/Character/Float/Double、BigInteger、BigDecimal、Enum 枚举类。