数组(Java入坑)9

本文介绍了Java中的数组,它是在内存中开辟连续空间存储相同类型数据的结构。数组的主要优点在于集中管理和高效访问大量同类型数据。文章通过示例展示了如何创建和初始化数组,以及通过下标进行赋值操作。还通过类比将数组比作一连串的教室,每个教室的编号对应数组的下标,人数则对应数组的内容,形象地解释了一维数组的概念。

我的理解

1、什么是数组:创建数组的时候会再内存中开辟一个连续的空间保存一组相同类型的数据,如学生的成绩、学生的身高、学生的姓名...

2、为什么需要数组:存储相同大量相同数据,方便集中管理。

创建Java文件Demo.java

 

public class Demo {
    public static void main(String[] args) {

        // 创建数组
        int[] arr = new int[10]; // 初始化数组,声明数组长度,里面的值都为零
        int[] brr = new int[]{1,2,3,4,5,6}; // 声明数组,并赋值
        int[] crr = {33,50,10,34,60}; // 声明数组并赋值

        /**
         * 1、数据类型[] 数组名 = new 数据类型[数组长度];
         * 2、数据类型[] 数组名 = new 数据类型[]{value1,value2...};
         * 3、数据类型[] 数组名 = {value1,value2...};
         * */

        // 赋值 通过下标来确定应该是给谁赋值。 下标范围:0~数组长度-1
        arr[0] = 2;
        arr[1] = 4;

        for (int i = 0; i < crr.length; i++) {
            System.out.println(i+"号教室有"+crr[i]+"人");
        }

    }
}

如图:我们把数组看作一个一层楼的连续教室。教室的编号看作数组的下标,教室的人数看作数组的内容。这就是一维数组。

### 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、付费专栏及课程。

余额充值