提升java性能的基本方法
来源:互联网 发布:人工智能专家系统 编辑:程序博客网 时间:2024/06/07 05:31
提升java性能的基本方法
1. 不要在循环条件中计算
如果循环中计算,则每循环一边就要计算一次,这会降低系统
效率如下代码:
//每次循环就算count*2 while(i<count*2){ //逻辑 }
应该替换成:
int total=count*2; while(i<total){ }
2. 尽可能把变量,方法声明为final static 类型
假设要讲阿拉伯数字转为中文数字,如下
public String toChineseNum(int num){ //中文数字 tring[] cns={"零","壹","贰","叁","肆","伍","陆" ,"柒","捌","玖"}; return cns[num]; }
每次调用该方法是都会重新生成一个cns数组,注意该数组不会改变,属于
不变数组,在这种情况下,吧他声明为类变量,并且加上final static修饰
会更合适,在类加载后就生成了该数组,每次方法调用则
不再重新生成数组对象了,这有助于提高系统的性能.
3. 缩小变量的范围
关于变量,能定义在方法内的就定义在方法内,能定义在一个循环
体内的就定义在循环体内,能放置在一个try…catch块内
的就放置在该块内,其目的就是加快GC的回收.
4. 频繁字符串操作使用StringBuilder或StringBuffer
虽然String的连接操作已经做了很多优化,但是在大量
的追加操作上StringBuilder或StringBuffer还是比”+”号的
5. 使用非线性检索
如果在ArrayList中存储了大量的数据,使用indexOf查找元素比
java.util.Collections.binarySearch的效率低很多,原因是
binarySearch是二分搜索法,而indexof使用的是逐个元素对比的方法.
注意:使用binarySearch搜索,元素必须进行排序,否则准确性就不可靠了
6. 覆写Exception的FillInStackTrace方法
fillStackTrace方法是用来记录异常时的栈信息的,这是非常
耗时的动作,若果我们在开发时不需要关注栈信息,则可以覆盖之.如下覆盖fillInStackTrace的
自定义异常会使性能提升10倍以上:
class MyException extends Extends{ public Throwable fillInStackTrace(){ return this; } }
7. 不建立冗余对象
阅读全文
0 0
- 提升java性能的基本方法
- 提升Java性能的基本方法
- 提升Java性能的基本方法
- 提升java性能的基本方法
- JAVA技术提升EJB性能的方法
- JAVA技术提升EJB性能的方法
- 提升Java性能的一些方法
- Java编程中提升性能的方法
- 提升Java程序性能的经验原则和方法
- Java应用性能的提升
- 提升Java性能的技巧
- 提升Java的锁性能
- 提升Java的锁性能
- 提升Asp.net性能的一些方法
- 提升ASP.net性能的方法
- 提升PHP性能的21种方法
- 提升magento性能的有效方法
- 提升C++输入输出性能的三个方法
- Java学习路线图
- 字典的更新,遍历
- Spring-IOC
- Visual Studio 2008 破解90天限制的激活升级方法!
- java基础之---- newInstance()和new()
- 提升java性能的基本方法
- 详解SpringMVC 工作流程
- PostgreSQL Copy 命令
- 消息队列通信方式为什么在内核和用户空间进行四次的数据拷贝
- 用Swing开发GUI程序(一)
- 跳跃游戏二
- C++读入输出的优化模板
- 对象的多态性
- 哈希函数-LintCode