Effective Java 之通用程序设计

    xiaoxiao2025-07-08  5

    本文是《Effective Java》一书的整理笔记


    1 优先使用 for-each 代替for循环

    for-each性能并不比for差,有时稍有性能优势for-each可以减少出Bug的几率for-each比for简洁

    2 尽量使用标准库

    减少重复造轮的时间标准库的代码经过严格测试,在性能、稳定性方面有着非常大的优势

    3 如果需要精确的答案,避免使用float和double

    float和double没有提供完全精确的结果使用int、long或者BigDecimal来计算精确结果,尤其是在货币计算中如果数值范围没有超过9位十进制,可以使用int;小于18位则用long;超过18位则必须使用BigDecimal

    4 最小化局部变量作用域

    在第一次使用它的地方声明局部变量使用for循环将循环变量的作用域限制在循环体内拆分方法,使方法小而集中最小化局部变量1、有助于读者理解代码;2、减少Bug发生

    5 基本类型优先于装箱基本类型

    基本类型的性能优于装箱基本类型装箱基本类型允许出现null值,因此在进行运算符操作时有可能抛出异常。例如Integer i; i < 0 ;装箱基本类型的比较结果有时与基本类型不一致。

    6 避免使用字符串的情况

    字符串不适合代替其他类型的值,例如当一串数据从文本、网络等传入程序中后,应当将其转化为适合的类型。字符串不适合代替枚举类型字符串不适合代替聚集类型,例如用一个字符串表示多个对象的ID,并用#隔开,最好使用一个简单的类代替,通常是私有的静态类。

    7 当心字符串连接符的性能

    在大规模的场景中,应该使用StringBuilder代替字符串连接符

    8 优先使用接口作为引用对象

    使程序更加灵活,当需要做出更改时

    9 慎用本地方法

    JVM越来越快,使用本地方法来提高性能不值得推荐本地语言是不安全的本地语言难以调试

    10 谨慎优化

    不要因为性能而牺牲合理的结构不要费力去编写快速的程序,应当编写好的程序

    欢迎大家访问我的博客,转载请注明出处 http://blog.csdn.net/abyss521

    转载请注明原文地址: https://ju.6miu.com/read-1300476.html
    最新回复(0)