• java简单优化和编写规范,自己总结的。


    1.永远不要比较两个浮点数是否相等。它是不安全的。详情google。

    2.尽量使用StringBuffer代替String。

    3.final类会提高很多效率。

    4.try-catch 不应该用来控制程序逻辑,只能用于错误处理。

    5.保证方法只有一个出口,即一个method只有一个return。

    6.尽量用局部变量。

    7.循环和try-catch同时使用时,不可以把try-catch放在for或者while的内部,应该放在循环的外部。

    8.压缩需要传输的数据。必要的做加密。

    9.耗时操作一定要使用线程。较多生命周期较短的线程应该使用线程池提高效率。

    10.不要为了方便使用static,要理解static在面向对象语言中的意义。

    11.提供工具方法时一定考虑传入参数的合法性判断。多线程一定要考虑同步。Synchronized不要放在循环里。

    12.不要手动gc。

    13.占用内存较大的对象如图片对象应该及时的置null,让jvm的gc回收他。

    14.适当的使用若引用和软引用,虽然用到的不多。

    15.方法尽量拆分成多个,功能细化,方便重用。

    16.尽量使用基本数据类型代替对象。

    17.乘除操纵可以考虑用位运算。

    18.不要把数组声明为public static final ,数组的final并不能控制数组内容不变。

    19.使用 int size = vector.size () for (int i = 0; i < size; i++)代替for (int i = 0; i < vector.size (); i++) ,后者会计算很多次vector.size()

    20.适当给出vector的大小比如new Vector(100);

    21.尽量不要使用数组的clone方法,可以用System.arraycopy来代替,也更灵活一些。用for循环复制的去面壁吧。

    22.合理设计减少集合的遍历次数。

    23.没有多线程不要使用Hashtable和Vector。应该使用HashMap和ArrayList.

    24.适当使用缓存。

    25. 避免或减少枚举,浮点数的使用。 

    26.int相乘考虑溢出情况。如算一天有多少微秒应该用long microsPerDay = 24L * 60 * 60 * 1000 * 1000;

    27.二维数组比一位数组占用空间多很多。

    欢迎讨论和指正。不定期更新。

  • 相关阅读:
    Solr开发文档(转)
    使用Mybatis-Generator自动生成Dao、Model、Mapping相关文件(转)
    用nodejs搭建最简单、轻量化的http server(转)
    [ASP.NET MVC 小牛之路]03
    【大型网站技术实践】初级篇:借助Nginx搭建反向代理服务器(转)
    我是如何在SQLServer中处理每天四亿三千万记录的(转)
    pycharm Unresolved reference 无法引入包
    vue 学习
    《插件》一个比较好用的 chrome浏览器的json格式化插件
    ip地址正则表达式
  • 原文地址:https://www.cnblogs.com/xirtam/p/3162692.html
Copyright © 2020-2023  润新知