Nói chung, thời gian đã trôi qua hoặc thời gian thực hiện là thời gian từ điểm bắt đầu đến điểm kết thúc của một sự kiện. Sau đây là nhiều cách khác nhau để tìm thời gian đã trôi qua trong Java -
- Phương thức currentTimeMillis () trả về thời gian hiện tại tính bằng mili giây. Để tìm thời gian đã trôi qua cho một phương thức, bạn có thể nhận được sự khác biệt giữa các giá trị thời gian trước và sau khi thực thi phương thức mong muốn.
- Phương thức nanoTime () trả về thời gian hiện tại tính bằng nano giây. Để tìm thời gian đã trôi qua cho một phương thức, bạn có thể nhận được sự khác biệt giữa các giá trị thời gian trước và sau khi thực thi phương thức mong muốn.
- Phương thức now () của lớp Instant trả về thời gian hiện tại và các phương thức Duration.between () trả về sự khác biệt giữa hai giá trị thời gian đã cho mà bạn có thể tìm thấy thời gian thực hiện một phương thức bằng cách sử dụng chúng.
- Thư viện commons của Apache cung cấp một lớp được gọi là Đồng hồ bấm giờ để cung cấp các phương thức start () stop () và getTime () mà bạn có thể tìm thấy thời gian cần thiết để thực thi một phương thức bằng cách sử dụng các phương thức này.
- Phương thức getTime () của lớp java.util.Date trả về thời gian hiện tại. Để tìm thời gian đã trôi qua cho một phương thức, bạn có thể nhận được sự khác biệt giữa các giá trị thời gian trước và sau khi thực thi phương thức mong muốn.
- Bạn cũng có thể lấy thời gian trong phiên bản hiện tại bằng cách sử dụng getInstance (). getTime (). getTime () sau khi tìm ra thời gian đã trôi qua bằng cách nhận được sự khác biệt.
Ví dụ:Sử dụng phương thức currentTimeMillis ()
public class Example { public void test(){ int num = 0; for(int i=0; i<=50; i++){ num =num+i; System.out.print(num+", "); } } public static void main(String args[]){ //Start time long begin = System.currentTimeMillis(); //Starting the watch new Example().test(); //End time long end = System.currentTimeMillis(); long time = end-begin; System.out.println(); System.out.println("Elapsed Time: "+time +" milli seconds"); } }
Đầu ra
0, 1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78, 91, 105, 120, 136, 153, 171, 190, 210, 231, 253, 276, 300, 325, 351, 378, 406, 435, 465, 496, 528, 561, 595, 630, 666, 703, 741, 780, 820, 861, 903, 946, 990, 1035, 1081, 1128, 1176, 1225, 1275, Elapsed Time: 4 milli seconds
Ví dụ:Sử dụng phương thức nanoTime ()
public class Example { public void test(){ int num = 0; for(int i=0; i<=50; i++){ num =num+i; System.out.print(num+", "); } } public static void main(String args[]){ //Start time long begin = System.nanoTime(); //Starting the watch new Example().test(); //End time long end = System.nanoTime(); long time = end-begin; System.out.println(); System.out.println("Elapsed Time: "+time); } }
Đầu ra
0, 1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78, 91, 105, 120, 136, 153, 171, 190, 210, 231, 253, 276, 300, 325, 351, 378, 406, 435, 465, 496, 528, 561, 595, 630, 666, 703, 741, 780, 820, 861, 903, 946, 990, 1035, 1081, 1128, 1176, 1225, 1275, Elapsed Time: 1530200
Ví dụ:Sử dụng lớp Instant
import java.time.Duration; import java.time.Instant; public class Example { public void test(){ int num = 0; for(int i=0; i<=50; i++){ num =num+i; System.out.print(num+", "); } } public static void main(String args[]) { //Starting time Instant start = Instant.now(); new Example().test(); //End time Instant end = Instant.now(); long time = Duration.between(start, end).toMillis(); System.out.println(); System.out.println(time+" Milli seconds"); } }
Đầu ra
0, 1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78, 91, 105, 120, 136, 153, 171, 190, 210, 231, 253, 276, 300, 325, 351, 378, 406, 435, 465, 496, 528, 561, 595, 630, 666, 703, 741, 780, 820, 861, 903, 946, 990, 1035, 1081, 1128, 1176, 1225, 1275, 3 Milli seconds
Ví dụ:Sử dụng lớp StopWatch
import org.apache.commons.lang3.time.StopWatch; public class Example { public void test(){ int num = 0; for(int i=0; i<=50; i++){ num =num+i; System.out.print(num+", "); } } public static void main(String args[]) { //Instantiating the StopWatch class StopWatch obj = new StopWatch(); //Starting the watch obj.start(); new Example().test(); //Stopping the watch obj.stop(); System.out.println(); System.out.println("Elapsed Time: "+obj.getTime() +" milli seconds"); } }
Đầu ra
0, 1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78, 91, 105, 120, 136, 153, 171, 190, 210, 231, 253, 276, 300, 325, 351, 378, 406, 435, 465, 496, 528, 561, 595, 630, 666, 703, 741, 780, 820, 861, 903, 946, 990, 1035, 1081, 1128, 1176, 1225, 1275, Elapsed Time: 1 milli seconds
Ví dụ:Sử dụng phương thức getTime ()
import java.util.Date; public class Demo{ public void test(){ int num = 0; for(int i=0; i<=50; i++){ num =num+i; System.out.print(num+", "); } } public static void main(String[] args) { long startTime = new Date().getTime(); new Demo().test(); long endTime = new Date().getTime(); long time = endTime - startTime; System.out.println("Execution time: " + time); } }
Đầu ra
0, 1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78, 91, 105, 120, 136, 153, 171, 190, 210, 231, 253, 276, 300, 325, 351, 378, 406, 435, 465, 496, 528, 561, 595, 630, 666, 703, 741, 780, 820, 861, 903, 946, 990, 1035, 1081, 1128, 1176, 1225, 1275, Execution time: 5
Ví dụ:sử dụng lớp Lịch
import java.util.Calendar; public class Demo{ public void test(){ int num = 0; for(int i=0; i<=50; i++){ num =num+i; System.out.print(num+", "); } } public static void main(String[] args) throws InterruptedException { long startTime = Calendar.getInstance().getTime().getTime(); new Demo().test(); long endTime = Calendar.getInstance().getTime().getTime(); long time = endTime - startTime; System.out.println("Execution time: " + time); } }
Đầu ra
0, 1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78, 91, 105, 120, 136, 153, 171, 190, 210, 231, 253, 276, 300, 325, 351, 378, 406, 435, 465, 496, 528, 561, 595, 630, 666, 703, 741, 780, 820, 861, 903, 946, 990, 1035, 1081, 1128, 1176, 1225, 1275, Execution time: 20