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.二维数组比一位数组占用空间多很多。

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

java简单优化和编写规范,自己总结的。的更多相关文章

  1. java编写规范及注意事项

    java编写规范及注意事项 1.注释 常见注释有三种  //   /**/ /****/ 如何才能写出漂亮的注释呢,注释的目的就是为了使你的代码让人更容易理解和维护,写一手好的注释是一个优秀码农的基本 ...

  2. Java学习---Java代码编写规范

    编码规范 1 前言为确保系统源程序可读性,从而增强系统可维护性,java编程人员应具有基本类似的编程风格,兹制定下述Java编程规范,以规范系统Java部分编程.系统继承的其它资源中的源程序也应按此规 ...

  3. java编写规范

    编码规范 转载于:https://www.cnblogs.com/ftl1012/p/javaCode.html 1 前言为确保系统源程序可读性,从而增强系统可维护性,java编程人员应具有基本类似的 ...

  4. Java代码编写规范(转载)

    编码规范 1 前言为确保系统源程序可读性,从而增强系统可维护性,java编程人员应具有基本类似的编程风格,兹制定下述Java编程规范,以规范系统Java部分编程.系统继承的其它资源中的源程序也应按此规 ...

  5. 【转】10种简单的Java性能优化

    10种简单的Java性能优化 2015/06/23 | 分类: 基础技术 | 14 条评论 | 标签: 性能优化 分享到: 本文由 ImportNew - 一直在路上 翻译自 jaxenter.欢迎加 ...

  6. 《Java性能优化权威指南》

    <Java性能优化权威指南> 基本信息 原书名:Java performance 原出版社: Addison-Wesley Professional 作者: (美)Charlie Hunt ...

  7. Java 性能优化手册 — 提高 Java 代码性能的各种技巧

    转载: Java 性能优化手册 - 提高 Java 代码性能的各种技巧 Java 6,7,8 中的 String.intern - 字符串池 这篇文章将要讨论 Java 6 中是如何实现 String ...

  8. Java 程序优化 (读书笔记)

    --From : JAVA程序性能优化 (葛一鸣,清华大学出版社,2012/10第一版) 1. java性能调优概述 1.1 性能概述 程序性能: 执行速度,内存分配,启动时间, 负载承受能力. 性能 ...

  9. Java 性能优化之 String 篇

    原文:http://www.ibm.com/developerworks/cn/java/j-lo-optmizestring/ Java 性能优化之 String 篇 String 方法用于文本分析 ...

随机推荐

  1. HDU4044 GeoDefense(有点不一样的树上背包)

    题目大概说一棵n个结点的树,每个结点都可以安装某一规格的一个塔,塔有价格和能量两个属性.现在一个敌人从1点出发但不知道他会怎么走,如果他经过一个结点的塔那他就会被塔攻击失去塔能量的HP,如果HP小于等 ...

  2. The number of divisors(约数) about Humble Numbers[HDU1492]

    The number of divisors(约数) about Humble Numbers Time Limit: 2000/1000 MS (Java/Others)    Memory Lim ...

  3. TYVJ P1036 统计数字 Label:坑!!!(用queue+map做出来的水)

    背景 NOIP2007年提高组第一题 描述 某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*109).已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数 ...

  4. 定时任务之Spring与Quartz的整合(有修改)

    转摘:http://www.javaweb1024.com/java/JavaWebzhongji/2015/04/13/548.html 在Spring中使用Quartz有两种方式实现:第一种是任务 ...

  5. 使用Expression做Linq的參數化排序

    Linq非常的好用,減少大量的資料庫操作手序,使用具名的類別,減少了在程式中寫SQL寫錯字的可能性,問題來了,如果我想用QueryString中的參數,作為排序的依據,但是因為是具名的類別,不能指定字 ...

  6. [转].net自定义验证控件CustomValidator的使用

    本文转自:http://tech.cncms.com/web/aspnet/96310.html CustomValidator验证控件,可以自定义验证函数,实现其它几个验证控件不能实现的验证规则,最 ...

  7. 典型Event ID

    Sr no Event ID 2003 Server Event ID 2008 Server Event Type 1 528 4624 Local User logon 2 6008 6008 U ...

  8. 【iCore、iCore2、iBoard例程】【异步FIFO跨时钟域通信(通过ARM 读FPGA FIFO)】

    欢迎访问电子工程师学堂,以便了解更多内容:http://www.eeschool.org 一.本实验基于iCore2 完成,通过简单改动,即可用在 iCore 核心板.iBoard 电子学堂上. iC ...

  9. CSS3动画(动画已丢,看原文)

    原文:http://ued.1905.com:8880/sample/css3/base/test.html CSS3动画 简要展示了CSS3常用动画效果,以及所使用代码. bounce 复制 展开代 ...

  10. 如何设置jquery的ajax方法为同步

    jax请求默认的都是异步的如果想同步 async设置为false就可以(默认是true) var html = $.ajax({  url: "some.php",  async: ...