❶ 如何計算java程序運行時間
第一種是以毫秒為單位計算的。
Java代碼
//偽代碼
long
startTime=System.currentTimeMillis();
//獲取開始時間
doSomeThing();
//測試的代碼段
long
endTime=System.currentTimeMillis();
//獲取結束時間
System.out.println("程序運行時間:
"+(end-start)+"ms");
//偽代碼
long
startTime=System.currentTimeMillis();
//獲取開始時間
doSomeThing();
//測試的代碼段
long
endTime=System.currentTimeMillis();
//獲取結束時間
System.out.println("程序運行時間:
"+(end-start)+"ms");
第二種是以納秒為單位計算的。
Java代碼
//偽代碼
long
startTime=System.nanoTime();
//獲取開始時間
doSomeThing();
//測試的代碼段
long
endTime=System.nanoTime();
//獲取結束時間
System.out.println("程序運行時間:
"+(end-start)+"ns");
//偽代碼
long
startTime=System.nanoTime();
//獲取開始時間
doSomeThing();
//測試的代碼段
long
endTime=System.nanoTime();
//獲取結束時間
System.out.println("程序運行時間:
"+(end-start)+"ns");
突然想起Junit4也可以測試執行時間,呵呵責任編輯:劉小蝸
❷ JAVA 獲取一段程序運行時間
abstractclassGetTime{
publicfinalvoidgetTime(){
longstart=System.currentTimeMillis();
runcode();
longend=System.currentTimeMillis();
System.out.println("運行時間:"+(end-start)+"毫秒");//應該是end-start
}
publicabstractvoidruncode();
}
{//建立一個java文件為SubTime.java,SubTime為主類,加為public
publicvoidruncode(){
for(intx=0;x<4000;x++){
System.out.println(x);
}
}
staticpublicvoidmain(Stringargs[]){//寫一個主函數就好了
newSubTime().getTime();//建立對象調用getTime();
}
}
可以用eclipse運行
❸ java 如何獲取系統運行時間
有兩種方法:
方法一:用java.util.Date類來實現,並結合java.text.DateFormat類來實現時間的格式化,看下面代碼:
mportjava.util.*;
importjava.text.*;
//以下默認時間日期顯示方式都是漢語語言方式
//一般語言就默認漢語就可以了,時間日期的格式默認為MEDIUM風格,比如:2008-6-1620:54:53
//以下顯示的日期時間都是再Date類的基礎上的來的,還可以利用Calendar類來實現見類TestDate2.java
publicclassTestDate{
publicstaticvoidmain(String[]args){
Datenow=newDate();
DateFormatd1=DateFormat.getDateInstance();//默認語言(漢語)下的默認風格(MEDIUM風格,比如:2008-6-1620:54:53)
Stringstr1=d1.format(now);
DateFormatd2=DateFormat.getDateTimeInstance();
Stringstr2=d2.format(now);
DateFormatd3=DateFormat.getTimeInstance();
Stringstr3=d3.format(now);
DateFormatd4=DateFormat.getInstance();//使用SHORT風格顯示日期和時間
Stringstr4=d4.format(now);
DateFormatd5=DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL);//顯示日期,周,時間(精確到秒)
Stringstr5=d5.format(now);
DateFormatd6=DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG);//顯示日期。時間(精確到秒)
Stringstr6=d6.format(now);
DateFormatd7=DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT);//顯示日期,時間(精確到分)
Stringstr7=d7.format(now);
DateFormatd8=DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.MEDIUM);//顯示日期,時間(精確到分)
Stringstr8=d8.format(now);//與SHORT風格相比,這種方式最好用
System.out.println("用Date方式顯示時間:"+now);//此方法顯示的結果和Calendar.getInstance().getTime()一樣
System.out.println("用DateFormat.getDateInstance()格式化時間後為:"+str1);
System.out.println("用DateFormat.getDateTimeInstance()格式化時間後為:"+str2);
System.out.println("用DateFormat.getTimeInstance()格式化時間後為:"+str3);
System.out.println("用DateFormat.getInstance()格式化時間後為:"+str4);
System.out.println("用DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL)格式化時間後為:"+str5);
System.out.println("用DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG)格式化時間後為:"+str6);
System.out.println("用DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT)格式化時間後為:"+str7);
System.out.println("用DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.MEDIUM)格式化時間後為:"+str8);
}
}
運行結果:
用Date方式顯示時間: Thu Sep 17 09:39:46 CST 2015
用DateFormat.getDateInstance()格式化時間後為:2015-9-17
用DateFormat.getDateTimeInstance()格式化時間後為:2015-9-17 9:39:46
用DateFormat.getTimeInstance()格式化時間後為:9:39:46
用DateFormat.getInstance()格式化時間後為:15-9-17 上午9:39
用DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL)格式化時間後為:2015年9月17日 星期四 上午09時39分46秒 CST
用DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG)格式化時間後為:2015年9月17日 上午09時39分46秒
用DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT)格式化時間後為:15-9-17 上午9:39
用DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.MEDIUM)格式化時間後為:2015-9-17 9:39:46
方法二:用java.util.Calendar類來實現,看下面:
importjava.util.*;
importjava.text.*;
//以下是利用Calendar類來實現日期時間的,和Date類相比較比較簡單
publicclassTestDate2{
publicstaticvoidmain(String[]args){
Calendarca=Calendar.getInstance();
intyear=ca.get(Calendar.YEAR);//獲取年份
intmonth=ca.get(Calendar.MONTH);//獲取月份
intday=ca.get(Calendar.DATE);//獲取日
intminute=ca.get(Calendar.MINUTE);//分
inthour=ca.get(Calendar.HOUR);//小時
intsecond=ca.get(Calendar.SECOND);//秒
intWeekOfYear=ca.get(Calendar.DAY_OF_WEEK);
System.out.println("用Calendar.getInstance().getTime()方式顯示時間:"+ca.getTime());
System.out.println("用Calendar獲得日期是:"+year+"年"+month+"月"+day+"日");
System.out.println("用Calendar獲得時間是:"+hour+"時"+minute+"分"+second+"秒");
System.out.println(WeekOfYear);//顯示今天是一周的第幾天(我做的這個例子正好是周二,故結果顯示2,如果你再周6運行,那麼顯示6)
}
}
運行結果是:
用Calendar.getInstance().getTime()方式顯示時間: Thu Sep 17 09:40:40 CST 2015
用Calendar獲得日期是:2015年8月17日
用Calendar獲得時間是:9時40分40秒
5
總結:中的來說,方法二是最方便的,方法一顯得分笨拙,不過看個人喜歡了。
❹ java 如何獲取應用的運行時間
java獲取應用的運行時間,可以利用時間差來獲得,使用System.currentTimeMillis()該方法獲得此時的時間,代碼如下:
packagecom.qiu.lin.he;
importjava.text.ParseException;
publicclassCeshi{
publicstaticvoidmain(String[]args)throwsParseException{
doublebegin=System.currentTimeMillis();//程序開始時間,調用系統的當前時間
for(inti=0;i<10000;i++){
//這里執行具體的業務邏輯
System.out.println(i);
}
//你要運行的程序
doubleend=System.currentTimeMillis();//程序結束時間,調用系統當前時間
doubletime=end-begin;//程序的運行時間
System.out.println(time/60+"秒");
}
}
運行結果如下:
❺ java如何計算程序運行時間
第一種是以毫秒為單位計算的。
[java]view plain
//偽代碼
longstartTime=System.nanoTime();//獲取開始時間
doSomeThing();//測試的代碼段
longendTime=System.nanoTime();//獲取結束時間
System.out.println("程序運行時間:"+(end-start)+"ns");
包含所需的包: import java.lang.System;
❻ Java 獲取SQL語句的執行時間
史上最高效最簡單的方法
java.sql.Date currentDate = new java.sql.Date(System.currentTimeMillis());
❼ java 如何計算線程執行時間
線程是獨立的,啟動了,就不受控,你可以考慮下面的方式,雖然不優雅,不過能解決你的問題,而跟線程相關的,也只能這樣來設計。
(如果你覺得線程的不太優雅,你可以採用觀察者的模式來加在一起,那代碼就優雅多了,簡單的問題,不建議搞得這么優雅,你覺得呢?)
啟動線程之前,獲取系統時間,做為開始時間
線程結束後,在線程的代碼的最後再獲取一次系統時間,這個時間減去剛剛上面的那個時間,就是運算時間
海楓科技、海楓論壇
❽ Java:使用什麼工具可以查看每個方法的執行時間呢
要用到currentTimeMillis()方法,我舉個例子給你吧,你看了就會明白了
public
class
StringPKStringBuilder
{
/**
*
字元串連接性能測試
*/
public
static
void
main(String[]
args)
{
System.out.println(testStringBuilder(30000));
System.out.println(testString(30000));
}
/*StringBuilder性能*/
public
static
long
testStringBuilder(int
n){
long
start=System.currentTimeMillis();
StringBuilder
bul=new
StringBuilder();
for(int
i=0;i
追問:
大哥這個我是知道的,但是如果每個方法都需要寫上start和end就費勁了,有什麼簡便的方法或工具嗎?
評論
0
0
載入更多