数组(java)

数组:

概念:是用于储存多个相同类型数据的集合。

数组在java中是一种引用数据类型(复杂数据类型)

1:数组的定义:int[] arr = new int[10];

注意:等号左边声明了一个整形数组变量,等号右边用new创建了一个数组(对象)。

2:初始化:

    2.1:静态初始化:

                int[] arr = {1,2,3,4};//静态的初始化,只能在声明的同时初始化。

                注意:声明数组变量后,只能用new关键字动态初始化,不能再使用静态初始化,否则会编译失败。

    2.2:动态初始化:

                int[] arr1 = new int[3];//每个默认元素会给默认初始值。

                int[] arr2 = new int[]{1,2,3};

                int[] arr3;

arr3 = new int[10];

                int[] arr4;

arr3 = new int[]{1,2,3};

3:数组的访问:

        3.1:访问数组单个元素:使用下标(数组名[下标])(下标从0开始)。

        3.2:使用数组长度:使用数组属性(数组名.length)。

        3.3:数组的遍历:使用循环。

                 注:遍历数组的简单方式:例如:System.out.println(Arrays.toString(arr));

4:数组的额复制。

    4.1:Arrays.copyOf(original, newLength)方法。//original:原数组 。newLength:新数组的长度。返回值为新数组的引用。

    4.2:System.arraycopy(src, srcPos, dest, destPos, length)方法。

            /*   返回值:void

                参数:

                src:原数组。 

                srcPos:从原数组的哪一位开始复制

                 dest:目标数组。 

                destPos:从目标数组的哪一位开始复制。

                length:复制的长度*/

### Java 数组的使用方法 Java 中的数组是一种用于存储固定大小的同类型数据的数据结构。数组在声明时需要指定其大小,且一旦声明后大小不可更改。数组元素通过索引访问,索引从 `0` 开始。以下是 Java 数组的常用使用方法: #### 1. 声明和初始化数组 Java数组的声明和初始化可以通过多种方式进行: ```java // 声明数组 int[] numbers; // 初始化数组 numbers = new int[5]; // 分配长度为5的数组,初始值为0 // 声明并初始化数组 int[] nums = {1, 2, 3, 4, 5}; // 使用new关键字声明并初始化 int[] arr = new int[]{10, 20, 30, 40}; ``` #### 2. 访问数组元素 数组元素通过索引进行访问,索引从 `0` 开始: ```java int[] array = {10, 20, 30, 40}; System.out.println(array[0]); // 输出第一个元素 10 System.out.println(array[2]); // 输出第三个元素 30 ``` #### 3. 遍历数组 可以使用 `for` 循环或增强型 `for` 循环来遍历数组: ```java int[] data = {1, 2, 3, 4, 5}; // 使用普通for循环 for (int i = 0; i < data.length; i++) { System.out.println(data[i]); } // 使用增强型for循环 for (int value : data) { System.out.println(value); } ``` #### 4. 修改数组元素 数组元素可以通过索引直接修改: ```java int[] values = {10, 20, 30}; values[1] = 25; // 修改索引为1的元素为25 ``` #### 5. 数组长度 数组的长度可以通过 `.length` 属性获取: ```java int[] items = {5, 10, 15, 20}; System.out.println("数组长度:" + items.length); // 输出 4 ``` #### 6. 多维数组 Java 支持多维数组,例如二维数组: ```java int[][] matrix = { {1, 2}, {3, 4} }; System.out.println(matrix[0][1]); // 输出 2 ``` #### 7. 打印数组 直接打印数组变量会输出数组在 JVM 中的引用地址: ```java int[] ns = {1, 1, 2, 3, 5, 8}; System.out.println(ns); // 类似 [I@7852e922 [^2] ``` 为了打印数组的元素内容,可以使用 `Arrays.toString()` 方法: ```java import java.util.Arrays; int[] array = {1, 2, 3, 4, 5}; System.out.println(Arrays.toString(array)); // 输出 [1, 2, 3, 4, 5] ``` #### 8. 数组去重 Java 数组去重可以通过循环比较或 `HashSet` 集合方法实现: ```java import java.util.HashSet; import java.util.Set; public class ArrayUnique { public static int[] removeDuplicates(int[] array) { Set<Integer> uniqueSet = new HashSet<>(); for (int num : array) { uniqueSet.add(num); } int[] result = new int[uniqueSet.size()]; int index = 0; for (int num : uniqueSet) { result[index++] = num; } return result; } public static void main(String[] args) { int[] data = {1, 2, 2, 3, 4, 4, 5}; int[] uniqueData = removeDuplicates(data); System.out.println(java.util.Arrays.toString(uniqueData)); // 输出 [1, 2, 3, 4, 5] } } ``` #### 9. 常用数组操作方法 Java 提供了 `Arrays` 工具类,用于简化数组操作: - **排序**: ```java import java.util.Arrays; int[] arr = {5, 3, 8, 1}; Arrays.sort(arr); // 排序后 [1, 3, 5, 8] ``` - **查找元素**: ```java int index = Arrays.binarySearch(arr, 5); // 查找元素5的索引位置 ``` - **复制数组**: ```java int[] copy = Arrays.copyOf(arr, arr.length); // 复制原数组 ``` - **填充数组**: ```java Arrays.fill(arr, 0); // 将数组所有元素填充为0 ``` ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值