1. 程式人生 > 其它 >【Java基礎進階筆記】- Day01 - 第三章 System類

【Java基礎進階筆記】- Day01 - 第三章 System類

技術標籤:【Java基礎進階筆記】javaSystem

Java基礎進階筆記 - Day01 - 第三章 System類

Java基礎進階筆記 - Day01 - 第三章 System類

系統:Win10
JDK:1.8.0_121
IDE:IntelliJ IDEA 2017.3.7

java.long.System 類中提供了大量的靜態方法,可以獲取與系統相關的資訊或系統級操作,在System類的API文件中,常用的方法有:

  • public static long currentTimeMillis()
    :返回以毫秒為單位的當前時間
  • public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length):將陣列中指定的資料拷貝到另一個數組中

3.1 currentTimeMills方法

實際上,currentTimeMills方法就是獲取當前系統時間與1970年01月01日00:00:00之間的毫秒差值

public class SystemDemo01 {
    public static void main(String[] args) {
        // 獲取當前時間毫秒值
        System.
out.println(System.currentTimeMillis()); // 1606377341807 } }

執行結果如下:
在這裡插入圖片描述

練習
輸出for迴圈列印數字1-9999所需使用的時間(毫秒)

public class SystemDemo02 {
    public static void main(String[] args) {
        // 獲取當前時間毫秒值
        long startTime = System.currentTimeMillis();
        for (int i = 1; i <= 9999; i++) {
            System.
out.println(i); } long endTime = System.currentTimeMillis(); System.out.println("共耗時 " + (endTime - startTime) + "毫秒!"); } }

執行結果:
在這裡插入圖片描述

3.2 arraycopy方法

arraycopy的陣列拷貝動作是系統級的,效能很高。System.arraycopy方法具有5個引數,含義分別為:

引數序列引數名稱引數型別引數含義
1srcObject源陣列
2srcPosint源陣列索引起始位置
3destObject目標陣列
4destPosint目標陣列索引起始位置
5lengthlength複製元素個數

練習
將src陣列中前3個元素,複製到dest陣列的第2個位置到第4個位置上。src陣列元素[1,2,3,4,5],dest陣列元素[6,7,8,9,10]。複製後:src陣列元素[1,2,3,4,5],dest陣列元素[6,1,2,3,10]

public class SystemDemo03 {
    public static void main(String[] args) {
        int[] src = new int[]{1, 2, 3, 4, 5};
        int[] dest = new int[]{6, 7, 8, 9, 10};
        System.out.println("複製前:src陣列" + Arrays.toString(src) + ",dest陣列" + Arrays.toString(dest));
        System.arraycopy(src,0,dest,1,3);
        System.out.println("複製後:src陣列" + Arrays.toString(src) + ",dest陣列" + Arrays.toString(dest));
    }
}

執行結果:
在這裡插入圖片描述