Die in Java bereitgestellte Methode System.currentTimeMillis() wird verwendet, um die aktuelle Computerzeit zu erhalten. Das Zeitausdrucksformat ist die aktuelle Computerzeit und GMT-Zeit (Greenwich Mean Time) 1. Januar 1970 0:00:0 Differenz in Millisekunden zwischen Sekunden.
Der Rückgabetyp der Methode System.currentTimeMillis() ist long , was die aktuelle Zeit in Millisekunden darstellt.
Während des Entwicklungsprozesses sind viele Menschen normalerweise daran gewöhnt, new Date() zu verwenden, um die aktuelle Uhrzeit abzurufen. Was new Date() tatsächlich tut, ist, die Methode System.currentTimeMillis() aufzurufen. Wenn Sie nur die Anzahl der Millisekunden benötigen, können Sie System.currentTimeMillis() anstelle von new Date() verwenden, was effizienter ist.
[Beispiel]Berechnen Sie die zeitaufwändige Situation der Verkettung von Zeichenfolgen zwischen String-Typ und StringBuilder-Typ.
/** * Java使用System.currentTimeMillis()方法计算程序运行时间 * @author pan_junbiao **/ public class CurrentTimeTest { /** * 使用String类型拼接字符串耗时 */ public static void testString() { String s = "Hello"; String s1 = "World"; long start = System.currentTimeMillis(); for(int i=0; i<10000; i++) { s+=s1; } long end = System.currentTimeMillis(); long runTime = (end - start); System.out.println("使用String类型拼接字符串耗时:" + runTime + "毫秒"); } /** * 使用StringBuilder类型拼接字符串耗时 */ public static void testStringBuilder() { StringBuilder s = new StringBuilder("Hello"); String s1 = "World"; long start = System.currentTimeMillis(); for(int i=0; i<10000; i++) { s.append(s1); } long end = System.currentTimeMillis(); long runTime = (end - start); System.out.println("使用StringBuilder类型拼接字符串耗时:" + runTime + "毫秒"); } public static void main(String[] args) { testString(); testStringBuilder(); } }
Laufergebnis:
Wissenspunktergänzung: #🎜 🎜#
Wie aus den laufenden Ergebnissen in der obigen Abbildung ersichtlich ist, wird beim Zusammenfügen von Zeichenfolgen das StringBuilder-Objekt anstelle des String-Objekts verwendet. Dies liegt daran, dass String ein unveränderliches Objekt ist und jedes Mal, wenn die Zeichenfolge geändert wird, ein neues String-Objekt erstellt wird, während StringBuilder eine veränderbare Zeichenfolge ist, ähnlich dem Zeichenfolgenpuffer von String. Daher ist die Verwendung von StringBuilder an Orten, an denen Zeichenfolgen häufig geändert werden, effizienter als die Verwendung von String. Die Laufgeschwindigkeit beträgt diesbezüglich: StringBuilder > In Bezug auf die Thread-Sicherheit ist StringBuilder thread-unsicher, während StringBuffer thread-sicher ist.Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Methode System.currentTimeMillis(), um die Programmlaufzeit in Java zu berechnen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!