亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中怎么聲明和創建數組

發布時間:2022-02-21 14:52:44 來源:億速云 閱讀:163 作者:iii 欄目:開發技術

這篇文章主要介紹了Java中怎么聲明和創建數組的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Java中怎么聲明和創建數組文章都會有所收獲,下面我們一起來看看吧。

數組

數組 (Array) 是有序數據的集合, 在 Java 中 java.util.Arrays包含用來操作數組的各種方法, 比如排序和搜索等. 其所有方法均為靜態方法, 調用起來非常簡單.

Java中怎么聲明和創建數組

聲明數組的兩個方法

方法一:

數據類型[] array;

方法二:

數據類型 array[];

創建數組的兩個方法

方法一:

數據類型[] array = new 數據類型[n];

int[] array = new int[10];

方法二:

數據類型[] arrray = {value1, value2, ...}

int[] array = new int[10];

索引

索引 (Index) 可以幫助我們定位到想要的數據, 大幅提高數據的檢索速度.

自定義數組

泛型

<E>示一種指定的數據類型, 叫做泛型. E, 取自 Element (元素) 的首字母. 在出現 E 的地方, 我們使用一種引用數據類型將其替換即可, 表示我們將存儲哪種引用類型的元素.

構造函數

// 有參構造
public Array(int capacity){
    data =  (E[]) new Object[capacity];
    size = 0;
}

// 無參構造
public Array(){
    this(10);
}

元素操作

// 頭部添加元素
public void addFirst(E element){
   // 如果超過數組最大容量, 扔出異常
   if(size == data.length){
        throw new RuntimeException("array is full!");
    }

    // 列表所有index及元素后移
    for (int i = size - 1; i >= 0; i--) {
        data[i + 1] = data[i];
    }

    // 數組第size個賦值為element
    data[0] = element;

    // 數組大小+1
    size++
}

// 尾部添加元素
public void addLast(E element){
    // 如果超過數組最大容量, 扔出異常
    if(size == data.length){
        throw new RuntimeException("array is full!");
    }

    // 數組第size個賦值為element
    data[size] = element;

    // 數組大小+1
    size++;
}

// 通過索引添加元素
public void add(int index, E element){

    // 如果超過數組最大容量, 扔出異常
    if(size == data.length){
        throw new RuntimeException("reached max capacity");
    }

    if(index < 0 || index > size){
        throw new RuntimeException("invalid index");
    }

    // 列表所有index及以后的元素后移
    for (int i = size-1; i >=index; i--) {
        data[i + 1] = data[i];
    }
    data[index] = element;
    size++;
}

調用

public static void main(String[] args) {

    // 創建數組
    Array array = new Array(10);

    // 尾部添加
    array.addLast(2);
    array.addLast(3);
    array.addLast(4);
    System.out.println(array.toString());

    // 頭部添加
    array.addFirst(1);
    array.addFirst(0);
    System.out.println(array.toString());

    // 通過index添加元素
    array.add(0, -1);
    array.add(6, 5);
    System.out.println(array.toString());
}

輸出結果:

Array{data=[2, 3, 4, null, null, null, null, null, null, null]}
Array{data=[0, 1, 2, 3, 4, null, null, null, null, null]}
Array{data=[-1, 0, 1, 2, 3, 4, 5, null, null, null]}

完整代碼

import java.util.Arrays;

public class Array<E> {
    private E[] data;  // 存放數據
    private int size;  // 存放數組元素個數

    // 有參構造
    public Array(int capacity){
        data = (E[]) new Object[capacity];
        size = 0;
    }

    // 無參構造
    public Array(){
        this(10);
    }

    // 獲取數組容量
    public int getCapacity(){
        return data.length;
    }

    // 獲取數組元素個數
    public int getSize(){
        return size;
    }

    // 判斷數組是否為空
    public boolean isEmpty(){
        return size == 0;
    }

    // 頭部添加元素
    public void addFirst(E element){
        // 如果超過數組最大容量, 扔出異常
        if(size == data.length){
            throw new RuntimeException("array is full!");
        }

        // 列表所有index及元素后移
        for (int i = size - 1; i >= 0; i--) {
            data[i + 1] = data[i];
        }

        // 數組第size個賦值為element
        data[0] = element;

        // 數組大小+1
        size++;
    }

    // 尾部添加元素
    public void addLast(E element){
        // 如果超過數組最大容量, 扔出異常
        if(size == data.length){
            throw new RuntimeException("array is full!");
        }


        // 數組第size個賦值為element
        data[size] = element;

        // 數組大小+1
        size++;
    }
    
    // 通過索引添加元素
    public void add(int index, E element){

        // 如果超過數組最大容量, 扔出異常
        if(size == data.length){
            throw new RuntimeException("reached max capacity");
        }

        if(index < 0 || index > size){
            throw new RuntimeException("invalid index");
        }

        // 列表所有index及以后的元素后移
        for (int i = size-1; i >=index; i--) {
            data[i + 1] = data[i];
        }
        data[index] = element;
        size++;
    }

    @Override
    public String toString() {
        return "Array{" +
                "data=" + Arrays.toString(data) +
                '}';
    }

    public static void main(String[] args) {

        // 創建數組
        Array array = new Array(10);

        // 尾部添加
        array.addLast(2);
        array.addLast(3);
        array.addLast(4);
        System.out.println(array.toString());

        // 頭部添加
        array.addFirst(1);
        array.addFirst(0);
        System.out.println(array.toString());

        // 通過index添加元素
        array.add(0, -1);
        array.add(6, 5);
        System.out.println(array.toString());
    }
}

關于“Java中怎么聲明和創建數組”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“Java中怎么聲明和創建數組”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

泸州市| 德格县| 驻马店市| 濮阳市| 怀集县| 荣成市| 崇义县| 镇赉县| 塔河县| 古交市| 萨嘎县| 卢氏县| 台东县| 彭泽县| 沧源| 南川市| 乌拉特中旗| 临泉县| 林周县| 杭锦后旗| 涟源市| 台南市| 石城县| 嘉善县| 榆林市| 昌乐县| 财经| 上思县| 淳化县| 呼和浩特市| 开平市| 新安县| 东光县| 芒康县| 浦县| 筠连县| 绥宁县| 漳平市| 宁城县| 八宿县| 建昌县|