1. 程式人生 > 資訊 >比亞迪:目前在手未交付訂單達 16 萬輛,交付週期已達 4.5 個月以上

比亞迪:目前在手未交付訂單達 16 萬輛,交付週期已達 4.5 個月以上

import java.lang.reflect.Array;
import java.sql.SQLOutput;
import java.util.Arrays;

public class Test4 {
    public static void main(String[] args) {
        // 1、陣列
//        String a = null;
//        a = "123"; // String的長度是 length()方法 返回int
//        System.out.println(a);
//        int[] b = new int[10]; // 陣列的長度 是 length屬性 返回int
//        System.out.println(b.length);

        // 陣列一旦建立就不能在改變它的大小(儘管可以改變它的每一個數組元素)
//        String[] s = new String[3];
//        for(int i=0;i<3;i++)
//        {
//            s[i] = "a";
//        }
//        for(int i=0;i<3;i++)
//        {
//            s[i] = "b";
//        }
//        System.out.println(s[0]);

        // String型別不可變的理解
        /*
        String物件一旦建立,實體是不可以變化的,即內容不可以修改。
        過程:
        1、new操作 在堆記憶體中開闢一塊空間 存放“123”;
        2、將空間的起始地址賦值給 棧記憶體 中的 a, a中存放的是String物件"123"的記憶體起始地址
        3、對a進行重新賦值的過程,改變的是a中指向的地址。並不是對堆記憶體中的空間進行修改。
        4、一段時間過後,JVM會對String“123”進行回收。
         */
//        String a = new String("123");
//        System.out.println(a);
//        a = "465";
//        System.out.println(a);
//        a = "2313";
//        System.out.println(a);
        // 陣列的 for each 迴圈,沒有 auto
//        int[] a = new int[3];
//        for(int i : a)
//        {
//            System.out.println(i);
//        }

        // 一個簡單的列印所有值得方法, Arrays.toString(陣列名) 工具類的靜態方法
        // 返回一個包含陣列元素的字串,這些元素被放置在括號內,並用逗號分割
//        int[] a = {2, 3, 5, 6, 11, 13};
//        System.out.println(Arrays.toString(a)); // [2, 3, 5, 6, 11, 13]


        // 2、陣列拷貝
        // Java中, 允許將一個數組變數拷貝給另一個數組變數。這時兩個變數將引用同一個陣列。
        // 即修改一個 另一個也會發生改變。
        /*
        淺拷貝:淺拷貝只複製指向某個物件的指標,而不復制物件本身,新舊物件還是共享同一塊記憶體。
        深拷貝:拷貝會另外創造一個一模一樣的物件,新物件跟原物件不共享記憶體,修改新物件不會改到原物件。
         */
//        int[] a = {1, 2, 3};
//        int[] b = a;
//        System.out.println(Arrays.toString(b)); // [1, 2, 3]
//        a[0] = 100;
//        System.out.println(Arrays.toString(b)); // [100, 2, 3]
        // 深拷貝
        // 新建一個數組手動複製,或者Arrays.copyOf()
        //如果陣列元素是數值型,那麼多餘的元素將被賦值為 0 ; 如果陣列元素是布林型,則將賦值
        //為 false。相反,如果長度小於原始陣列的長度,則只拷貝最前面的資料元素。
//        int[] a = {1, 2, 3};
//        int[] b = Arrays.copyOf(a, a.length);
//        System.out.println(Arrays.toString(b)); // [1, 2, 3]
//        a[0] = 100;
//        System.out.println(Arrays.toString(b)); // [1, 2, 3]


        // 3、陣列排序
//        int[] a = {3, 2, 1};
//        Arrays.sort(a);
//        System.out.println(Arrays.toString(a)); // [1, 2, 3]
        // Math.random方法將返回一個0到1之間(包含0、不包含1)的隨機浮點數。
        // 用 n 乘以這個浮點數,就可以得到從 0 到 n-1 之間的一個隨機數。
//        int r = (int) (Math.random() * 10); // r 為 0 ~ 10 包括0 不包括10的隨機數。
//        System.out.println(r);

        // 二維陣列
//        int[][] a = {
//                {1,2,3},
//                {3,4,5}
//        };
//        // Arrays.deepToString(a) 快速遍歷二維陣列a
//        System.out.println(Arrays.deepToString(a)); // [[1, 2, 3], [3, 4, 5]]

        // 不規則陣列
        /*
        double[][] balances = new double[10][6]; // Java
        等價於
        double** balances = new double*[10]; // C++
         */
        // Java陣列可以交換
//        int[] a = {1,2,3};
//        int[] b = {22,33,33};
//        int[] t = a;
//        a = b;
//        b = t;
//        System.out.println(Arrays.toString(a)); // [22, 33, 33]
//        System.out.println(Arrays.toString(b)); // [1, 2, 3]

//        int[][] a = new int[3][]; // 初始化 二維陣列的行數
//        for(int i = 0; i < 3; i++)
//        {
//            a[i] = new int[i+1]; // 對每一行初始化數量
//        }
//        for(int i = 0; i < 3; i++)
//        {
//            for(int j = 0; j <= i; j++)
//            {
//                a[i][j] = 45;
//            }
//        }
//        System.out.println(Arrays.deepToString(a)); // [[45], [45, 45], [45, 45, 45]]


    }
}

本文來自部落格園,作者:永恆&,轉載請註明原文連結:https://www.cnblogs.com/Sun-yuan/p/15359930.html