java中代码优化问题
来源:互联网 发布:九索数据怎么样 编辑:程序博客网 时间:2024/06/18 14:54
java中代码优化问题
1、根据条件使用符号整型变量
原则:无符号类型:除法和余数,循环计数,数组下标;有符号类型:整型到浮点的转化
例如:以“F”或者“f”为后缀(3.14f)的浮点常量才是float型的,否则默认为double型。
unsigned int i; i=i/10;优于int i;i=i/10;
2、大循环放里面小循环放外面
for(int i=0;i<5;i++){
.....
for(int j=0;j<10000;j++){
......
}
}
3、与循环不相关的尽量放外面
例如...
s=1;
for(int i=0;i<100;i++){
s=s/(k1*k2)
}
变成
s=1;
m=k1*k2;
for(int i=0;i<100;i++){
s=s/m;
}
4、尽量不要在循环中使用try{}catch{}
5、循环内不要创建大量的临时变量
例:for(int i=0;i<100;i++){
...
HelloKit helloKit=new HelloKit();
...
}应该变为:
HelloKit helloKit=null;
for(int i=0;i<100;i++){
...
helloKit=new HelloKit();
...
}
6、尽量使用懒加载:即需要时才创建
ArrayList arrayList=new ArrayList();
String str="hello"
if(j==10){
arrayList.add(str);
}
改为:
if(j==10){
String str="hello"
arrayList.add(str);
}
6、复制大量数据时使用System.arraycopy()命令
两个数组间的复制尽量不要用循环,用java提供的数组拷贝方法
public void arrayCopy(){
int[] array1= new int[20];
for(int i=0;i<20;i++){
array1=i;
}
int[] array2=new int[20];
System.arraycopy(array1,0,array2,0,20);
for(j=0;j<20;j++){
System.out.println(array2+",");
}
}
7、减少循环次数变量的读取
for(int i=0;i<list.length;i++){
}//这样每次都会判定i是否到了list.length边界,每次都需要进行边界大小的计算
改为:
for(int i=0,j=list.length;i<j;i++){
}//这样j是局部变量只需要初始化一次
8、switch()中,常用的case值放前面,不常用的放后面
9尽量使用局部变量
局部变量调用方法时候传递的参数以及在调研中产生的临时变量都保存在栈(stack)中,静态变量,实例变量都是在堆中(Heap)创建,速度较慢。
10、将类中不变的实例静态化
如果类中的变量不会随他的实例而变化,就可以定义为静态变量,从而使得其它所有的实例都共享这个变量
11、尽量指定类的final修饰符
public final void doWork(){
......
}
- java中代码优化问题
- Android java代码优化问题探究
- eclipse中使用lombok,优化java代码
- [java]中代码注释问题
- Java中多重循环的优化问题
- java中数据库的优化问题
- 代码优化问题
- JavaWeb开发中关于JS校验的代码优化问题
- 背包问题 没有进行空间优化的java代码
- java代码优化---->性能优化
- vs2005中优化代码
- OJ中使用Java语言的代码优化策略
- Java开发中程序和代码性能优化
- Java开发中程序和代码性能优化
- myeclipse中java代码注释模板问题
- java中代码块执行问题
- java中代码执行速度问题
- Java代码优化TIPS
- 二分查找
- eclipse调试crypti
- C++作业3
- Sqlite创建数据库,表
- java 文件及文件夹操作(复制、移动、删除)
- java中代码优化问题
- vs在release模式下出现“生成下面的模块时,启用了优化或没有调试信息”错误信息解决办法
- Java 设计模式之代理模式的基本概念
- hive Enhanced Aggregation, Cube, Grouping and Rollup
- iOS 保持界面流畅的技巧
- 4.7
- 小白该如何写自己的博客呢
- (Caffe,LeNet)IDE单步调试(一)
- java代码性能优化