
要用到currentTimeMillis()方法,我举个例子给你吧,你看了就会明白了
public class StringPKStringBuilder {
/
字符串连接性能测试
/
public static void main(String[] args) {
Systemoutprintln(testStringBuilder(30000));
Systemoutprintln(testString(30000));
}
/StringBuilder性能/
public static long testStringBuilder(int n){
long start=SystemcurrentTimeMillis();
StringBuilder bul=new StringBuilder();
for(int i=0;i<n;i++){
bulappend("A");
}
long end=SystemcurrentTimeMillis();
return end-start;
}
/String性能/
public static long testString(int n){
long start=SystemcurrentTimeMillis();
String s="";
for(int i=0;i<n;i++){
s+="A";//相当于
//s=new StringBuilder(s)append("A")toString();
}
long end=SystemcurrentTimeMillis();
return end-start;
}
}
你运行程序之前打开任务管理器就能看到内存占用情况,时间只有自己掏个表估算了,没想到有更好的解决方案
------------------------------------------------
这样啊,建议你去CSDN上发帖问问看,那里高手多
线程是独立的,启动了,就不受控,你可以考虑下面的方式,虽然不优雅,不过能解决你的问题,而跟线程相关的,也只能这样来设计。
(如果你觉得线程的不太优雅,你可以采用观察者的模式来加在一起,那代码就优雅多了,简单的问题,不建议搞得这么优雅,你觉得呢?)
启动线程之前,获取系统时间,做为开始时间
线程结束后,在线程的代码的最后再获取一次系统时间,这个时间减去刚刚上面的那个时间,就是运算时间
海枫科技、海枫论坛
//不需要导入包
//在你的方法第一行加上:
long a=SystemcurrentTimeMillis();
//在最好的一行加上:
Systemoutprintln("\r<br>执行耗时 : "+(SystemcurrentTimeMillis()-a)/1000f+" 秒 ");
以上就是关于Java:使用什么工具可以查看每个方法的执行时间呢全部的内容,包括:Java:使用什么工具可以查看每个方法的执行时间呢、怎样看一个java 程序运行的时间和内存、java 如何计算线程执行时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)