float和double之间的性能差异并不显著。
如果您经常执行这些操作,那么float比float更好,而且它消耗的空间也更少。
更新:
public long sumDouble(){
double[] arr = new double[1000];
for(int i = 0 ;i < 1000;i++){
arr[i]=new Random().nextFloat();
}
float sum = 0.0f;
long start = System.currentTimeMillis();
for(int i = 0 ;i < 1000;i++){
sum+=arr[i];
}
System.out.println(""+sum);
long end = System.currentTimeMillis();
return end - start;
}
public long sumFloat(){
double[] arr = new double[1000];
for(int i = 0 ;i < 1000;i++){
arr[i]=new Random().nextDouble();
}
double sum = 0.0f;
long start = System.currentTimeMillis();
for(int i = 0 ;i < 1000;i++){
sum+=arr[i];
}
System.out.println(""+sum);
long end = System.currentTimeMillis();
return end - start;
}
尝试在您的实际设备中执行这些方法来测量性能差异,这并不太重要。