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.二维数组比一位数组占用空间多很多。
欢迎讨论和指正。不定期更新。
java简单优化和编写规范,自己总结的。的更多相关文章
- java编写规范及注意事项
java编写规范及注意事项 1.注释 常见注释有三种 // /**/ /****/ 如何才能写出漂亮的注释呢,注释的目的就是为了使你的代码让人更容易理解和维护,写一手好的注释是一个优秀码农的基本 ...
- Java学习---Java代码编写规范
编码规范 1 前言为确保系统源程序可读性,从而增强系统可维护性,java编程人员应具有基本类似的编程风格,兹制定下述Java编程规范,以规范系统Java部分编程.系统继承的其它资源中的源程序也应按此规 ...
- java编写规范
编码规范 转载于:https://www.cnblogs.com/ftl1012/p/javaCode.html 1 前言为确保系统源程序可读性,从而增强系统可维护性,java编程人员应具有基本类似的 ...
- Java代码编写规范(转载)
编码规范 1 前言为确保系统源程序可读性,从而增强系统可维护性,java编程人员应具有基本类似的编程风格,兹制定下述Java编程规范,以规范系统Java部分编程.系统继承的其它资源中的源程序也应按此规 ...
- 【转】10种简单的Java性能优化
10种简单的Java性能优化 2015/06/23 | 分类: 基础技术 | 14 条评论 | 标签: 性能优化 分享到: 本文由 ImportNew - 一直在路上 翻译自 jaxenter.欢迎加 ...
- 《Java性能优化权威指南》
<Java性能优化权威指南> 基本信息 原书名:Java performance 原出版社: Addison-Wesley Professional 作者: (美)Charlie Hunt ...
- Java 性能优化手册 — 提高 Java 代码性能的各种技巧
转载: Java 性能优化手册 - 提高 Java 代码性能的各种技巧 Java 6,7,8 中的 String.intern - 字符串池 这篇文章将要讨论 Java 6 中是如何实现 String ...
- Java 程序优化 (读书笔记)
--From : JAVA程序性能优化 (葛一鸣,清华大学出版社,2012/10第一版) 1. java性能调优概述 1.1 性能概述 程序性能: 执行速度,内存分配,启动时间, 负载承受能力. 性能 ...
- Java 性能优化之 String 篇
原文:http://www.ibm.com/developerworks/cn/java/j-lo-optmizestring/ Java 性能优化之 String 篇 String 方法用于文本分析 ...
随机推荐
- BZOJ3547 : [ONTAK2010]Matchings
树形DP f[i][0]表示不向下连边的最大匹配数 f[i][1]表示向下连一条边的最大匹配数 h[][]表示对应的方案数 为了防止爆栈用BFS 为了防止MLE: 1.数组循环利用,比如存边的数组在存 ...
- APIO2015
还没有写完APIO2015的题目,打算今天写一写. T1: 按位DP,DP时要保证已确定的位为0. 前4组设f[n][k]表示把前n个分成k组是否合法. 最后一组设g[n]表示把前n个最少分为多少组才 ...
- ASP.NET后台JS弹框使前台页面样式丢失 解决办法
Response.Write("<script>alert('您还没有上传相关图片!');</script>");是向前台输出js 应该用下面的方法 Cli ...
- RN组件之ToolbarAndroid
一.ToolbarAndroid 1.该组件封装了Android平台中的ToolBar组件(只适用于Android平台).一个ToolBar组件可以显示一个Logo图标 以及一些导航图片(例如:菜单功 ...
- ondragover 事件规定在何处放置被拖动的数据
nternet Explorer 9.Firefox.Opera 12.Chrome 以及 Safari 5 支持拖放. 被拖元素,dragElement : 1.添加事件:ondragstart 2 ...
- dig理解DNS的解析过程 - 阿权的书房
关于DNS的常识,可以阅读附录的一些参考资料.本文旨在尝试举例用dig命令理解这个过程,并非权威知识,仅供参考.测试域名为阿权的书房的域名 www.aslibra.com 和 www.163.com. ...
- HDU 2159 FATE(二维费用背包)
FATE Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- ScrollFix.js:一个 iOS5 溢出滚动的(有限)修复方案
Update: Unfortunately this does not 100% solve the problem, the script falls down when handling touc ...
- CSS系列:less备忘
less备忘 //这是一个运行在koala中的less文件,//注释不会被编译到css文件中,/**/注释会 ****************by 李可 2016/04/19 /*所有,所有伪类*/ ...
- GTX 680 Kepler
http://www.nvidia.com/object/nvidia-kepler.html http://www.geforce.com/hardware/desktop-gpus/geforce ...