日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 java綜合 正文

Java:怎么獲取當前時間、怎么計算程序運行時間 (源碼詳解 超詳細!!!)

作者:煎餅小狗 更新時間: 2024-07-15 java綜合

目錄

一、使用?System.currentTimeMillis()

1、獲取當前時間? ?

2、計算程序運行時間

二、使用? import java.util.Date

1、獲取當前時間

2、計算程序運行時間

三、Calendar 類

獲取當前時間

四、Date/Time API?

1、LocalDate

2、LocalTime

3、LocalDateTime

4、ZonedDateTime


一、使用?System.currentTimeMillis()

????????這個方法的返回值為 long ,所以需要用 long 類型的變量來接受。此方法優勢是不受時區的影響,但是得到結果是時間戳的格式。

1、獲取當前時間? ?

public class Main{
    public static void main(String[] args) {
        long time = System.currentTimeMillis();
        System.out.println(time); //打印出來的是時間戳
    }
}

我們可以通過代碼將其轉換成平時我們看到的時間格式:

import java.text.SimpleDateFormat;
import java.util.Date;

public class Main{
    public static void main(String[] args) {
        long time = System.currentTimeMillis();
        SimpleDateFormat s = new SimpleDateFormat();
        Date date = new Date();
        
        System.out.println(s.format(date));  //打印出來的是時間格式
        System.out.println(time); //打印出來的是時間戳
    }
}

運行結果:

2、計算程序運行時間

? ? ? ? 通過System.currentTimeMillis()來計算程序運行消耗的時間很簡單,在頭尾都記下當前時間,然后相減就可以了。

public class Main{
    public static void main(String[] args) {
        long time1 = System.currentTimeMillis();

        //程序內容
        
        long time2 = System.currentTimeMillis();
        System.out.println("程序運行時間:" + (time2 - time1));
    }
}

二、使用? import java.util.Date

????????這個方法的返回值為 long ,所以需要用 long 類型的變量來接受。得到結果也是時間戳的格式。

1、獲取當前時間

// 時間戳格式

public class Main{
    public static void main(String[] args) {
        Date date = new Date();
        long time = date.getTime();
        System.out.println(time);   //時間戳
    }
}

// 上面獲取的日期也可以通過 format 轉換成我們所需要的格式,如:

import java.text.SimpleDateFormat;
import java.util.Date;

public class Main{
    public static void main(String[] args) {
        Date date = new Date();
        SimpleDateFormat s1 = new SimpleDateFormat("YYYY-MM-DD");
        SimpleDateFormat s2 = new SimpleDateFormat("hh:mm:ss");
        System.out.println(s1.format(date)); //年月日
        System.out.println(s2.format(date)); //時分秒
    }
}

2、計算程序運行時間

? ? ? ? 這邊計算程序運行時間的原理與?System.currentTimeMillis() 的相同,在頭尾都記下當前時間,然后相減就可以了。

import java.util.Date;

public class Main{
    public static void main(String[] args) {
        Date date = new Date();
        long time1 = date.getTime();

        //程序主體

        long time2 = date.getTime();
        System.out.println("程序運行時間:" + (time2 - time1));
    }
}

三、Calendar 類

????????Calendar 類,是專門用來轉換特定時刻和日歷字段之間的日期和時間。

獲取當前時間

import java.util.Calendar;

public class Main{
    public static void main(String[] args) {
        Calendar calendar = Calendar.getInstance();
        System.out.println(calendar.getTime());
    }
}

// 上面獲取的日期也可以通過 format 轉換成我們所需要的格式,如:

import java.text.SimpleDateFormat;
import java.util.Calendar;

public class Main {
    public static void main(String[] args) {
        Calendar calendar = Calendar.getInstance();
        SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
       
        System.out.println(s.format(calendar.getTime()));
        //System.out.println(calendar.getTime());
    }
}

四、Date/Time API?

????????Java 8 提供了一個全新的 API ,用來替換 Java.util.Date 和 Java.util.Calendar。Date/Time API 提供了多個類,幫助我們完成工作。

1、LocalDate

LocalDate? ? ? ? LocalDate 一般只顯示日期,沒有時間。這意味著我們只能獲取當前日期,但沒有一天的具體時間。

import java.time.LocalDate;
import java.time.format.DateTimeFormatter;

public class Demo5 {
    public static void main(String[] args) {
        LocalDate localDate = LocalDate.now();
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MM-dd");

        System.out.println(localDate.format(formatter));    //指定格式輸出
        System.out.println(localDate);                      //默認格式輸出
    }
}

2、LocalTime

????????LocalTime 則與 LocalDate 相反,它只能獲取時間,而不能獲取日期。

import java.time.LocalTime;
import java.time.format.DateTimeFormatter;

public class Demo6 {
    public static void main(String[] args) {
        LocalTime localTime = LocalTime.now();
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("mm:ss");

        System.out.println(localTime.format(formatter));    //指定格式輸出
        System.out.println(localTime);                      //默認格式輸出
    }
}

3、LocalDateTime

????????LocalDateTime 顧名思義,就是將以上兩者聯系起來,即可以獲取日期,又可以獲取時間。因此, LocalDateTime 是Java中最常用的 Date/Time 類。

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class Main {
    public static void main(String[] args) {
        LocalDateTime dateTime = LocalDateTime.now();
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy hh:mm:ss");

        System.out.println(dateTime.format(formatter)); //指定格式輸出
        System.out.println(dateTime);                   //默認格式輸出
    }
}

4、ZonedDateTime

????????ZoneDateTime 在 Java 8 日期時間 API 的類表示日期和時間時區信息。ZonedDateTime 一般是不可改變的,這意味著該類的對象執行計算的所有方法都會返回一個新的 ZonedDateTime 。

創建方式:

import java.time.ZonedDateTime;

public class Main {
    public static void main(String[] args) {
        ZonedDateTime dateTime = ZonedDateTime.now();
    }
}

ZonedDateTime 有許多方法可以訪問時間:

?

直接調用即可~


? ? ? ? 以上就是??Java:怎么獲取當前時間、怎么計算程序運行時間 (源碼詳解 超詳細!!!) 的全部內容了,對您有幫助的話請多多點贊支持!

原文鏈接:https://blog.csdn.net/linsc_05/article/details/137971014

  • 上一篇:沒有了
  • 下一篇:沒有了
欄目分類
最近更新