千家信息网

Java中怎么声明和创建数组

发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,这篇文章主要介绍了Java中怎么声明和创建数组的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java中怎么声明和创建数组文章都会有所收获,下面我们一起来看看吧。数组数组
千家信息网最后更新 2025年02月01日Java中怎么声明和创建数组

这篇文章主要介绍了Java中怎么声明和创建数组的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java中怎么声明和创建数组文章都会有所收获,下面我们一起来看看吧。

数组

数组 (Array) 是有序数据的集合, 在 Java 中 java.util.Arrays包含用来操作数组的各种方法, 比如排序和搜索等. 其所有方法均为静态方法, 调用起来非常简单.

声明数组的两个方法

方法一:

数据类型[] array;

方法二:

数据类型 array[];

创建数组的两个方法

方法一:

数据类型[] array = new 数据类型[n];

int[] array = new int[10];

方法二:

数据类型[] arrray = {value1, value2, ...}

int[] array = new int[10];

索引

索引 (Index) 可以帮助我们定位到想要的数据, 大幅提高数据的检索速度.

自定义数组

泛型

示一种指定的数据类型, 叫做泛型. 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 {    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中怎么声明和创建数组"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。

0