利用System.currentTimeMillis获取运行所用的时间
优化前:
package hello;
public class zhishu {
public static void main(String[] args) {
//获取当前时间距离1970-01-01 00:00:00的毫秒数
long start=System.currentTimeMillis();
for(int i=2;i<=100010;i++) {
int a=0;
for(int j=2;j<i;j++) {
if(i%j==0) {
a=1;
}
}
if(a==0) {System.out.println(i);}
}
//获取当前时间距离1970-01-01 00:00:00的毫秒数
long end=System.currentTimeMillis();
System.out.println("所花费的时间为:"+(end-start));
}
}
优化后运行for循环所用毫秒为:
优化后:
package hello;
public class zhishu {
public static void main(String[] args) {
//获取当前时间距离1970-01-01 00:00:00的毫秒数
long start=System.currentTimeMillis();
for(int i=2;i<=100010;i++) {
int a=0;
for(int j=2;j<=Math.sqrt(i);j++) {
if(i%j==0) {
a=1;
break;
}
}
if(a==0) {System.out.println(i);}
}
//获取当前时间距离1970-01-01 00:00:00的毫秒数
long end=System.currentTimeMillis();
System.out.println("所花费的时间为:"+(end-start));
}
}
优化后运行for循环所用毫秒为:
附:
求平方根所用math类中的方法: