网站版块模板,商务网站的建设,什么是搜索引擎竞价推广,中山网站建设价位文章目录 前言一、初识数组1. 数组的定义2. 数组的特点3. 声明和初始化数组4. 默认初始化值 二、访问和操作数组元素1. 数组的索引和范围2. 通过索引访问数组元素3. 修改数组元素的值 三、数组的长度和属性1. 数组的长度计算2. 数组的长度属性3. 数组越界的错误 四、数组的遍历… 文章目录 前言一、初识数组1. 数组的定义2. 数组的特点3. 声明和初始化数组4. 默认初始化值 二、访问和操作数组元素1. 数组的索引和范围2. 通过索引访问数组元素3. 修改数组元素的值 三、数组的长度和属性1. 数组的长度计算2. 数组的长度属性3. 数组越界的错误 四、数组的遍历1. for循环遍历数组2. 增强for循环遍历数组3. 遍历多维数组 五、多维数组1. 二维数组的定义和初始化2. 访问和操作二维数组元素 六、数组的注意事项和扩展1. 数组长度的不可变性2. 数组的复制和排序3. 数组的查找4. 动态数组的实现ArrayList 总结 前言
为了巩固所学的知识作者尝试着开始发布一些学习笔记类的博客方便日后回顾。当然如果能帮到一些萌新进行新技术的学习那也是极好的。作者菜菜一枚文章中如果有记录错误欢迎读者朋友们批评指正。 博客的参考源码以及可以在我主页的资源里找到如果在学习的过程中有什么疑问欢迎大家在评论区向我提出
一、初识数组
数组是一种可以容纳多个相同类型数据元素的数据结构。它是Java编程中常用的数据类型用于存储和操作一组数据。数组提供了一个连续的内存空间来存储多个元素并通过索引来访问和操作其中的每个元素。
1. 数组的定义
在Java中可以使用以下语法来定义一个数组 dataType[] arrayName;其中dataType表示数组中元素的数据类型arrayName是数组的名称。
2. 数组的特点
1. 数组具有以下特点
数组长度固定一旦数组被创建其长度就是固定的无法动态改变.存储相同类型的数据数组中的元素必须是相同类型的数据连续的内存空间数组中的元素在内存中是连续存储的可以通过索引快速访问 正是因为数组的在内存空间的地址是连续的所以我们在删除或者增添元素的时候就难免要移动其他元素的地址。例如删除下标为3的元素如图所示 数组的元素是不能删除的只能覆盖
3. 声明和初始化数组
1. 声明数组的语法
要声明一个数组可以使用以下语句 dataType[] arrayName;其中dataType是数组中元素的数据类型arrayName是数组的名称。
2. 静态初始化和动态初始化
在声明数组的同时可以进行初始化操作。数组的初始化可以分为静态初始化和动态初始化两种方式。
静态初始化
静态初始化是指在声明数组的同时为数组元素赋初值。可以使用以下语法进行静态初始化 dataType[] arrayName {element1, element2, ...};其中dataType是数组中元素的数据类型arrayName是数组的名称element1, element2, …是要赋给数组元素的值。
动态初始化
动态初始化是指在声明数组后再为数组分配内存空间并为数组元素赋初值。可以使用以下语法进行动态初始化 dataType[] arrayName new dataType[arrayLength];其中dataType是数组中元素的数据类型arrayName是数组的名称arrayLength是数组的长度表示可以存储的元素个数。
4. 默认初始化值
在Java中如果没有为数组中的元素赋初值那么数组会自动进行默认初始化根据数据类型不同采用不同的默认值。下面是一些常见数据类型的默认初始化值
int类型的数组默认元素值为 0double类型的数组默认元素值为 0.0boolean类型的数组默认元素值为 falsechar类型的数组默认元素值为空字符 \u0000
二、访问和操作数组元素
1. 数组的索引和范围
数组中的每个元素都通过一个非负整数索引来访问。索引从 0 开始依次递增。例如第一个元素的索引为 0第二个元素的索引为 1以此类推。数组的长度为 n则有效索引范围为 0 到 n - 1。
2. 通过索引访问数组元素
要访问数组中的元素可以使用以下语法 arrayName[index]其中arrayName是数组的名称index是要访问的元素的索引。通过该语法可以获取数组中指定索引位置的元素值。
3. 修改数组元素的值
通过索引访问数组元素后还可以对该元素进行赋值操作从而修改元素的值。使用以下语法来修改数组元素的值 arrayName[index] newValue;其中arrayName是数组的名称index是要修改的元素的索引newValue是要赋给该元素的新值。
三、数组的长度和属性
1. 数组的长度计算
通过使用 length 属性可以获取数组的长度。长度表示数组中元素的个数而非数组占用的内存空间大小。要获取数组的长度可以使用以下语法 int length arrayName.length;其中arrayName是数组的名称length是用于存储数组长度的变量。
2. 数组的长度属性
数组的长度是在创建数组时指定的一旦创建后长度就是固定的。使用length属性可以获取数组的长度值常用于遍历数组或检查数组是否越界。
3. 数组越界的错误
在访问数组元素时需要确保所使用的索引在有效范围内否则会发生数组越界的错误。如果索引小于0或大于等于数组长度都会导致数组越界错误。在编写代码时应格外注意数组索引的范围。
四、数组的遍历
数组的遍历是指依次访问数组中的每个元素。遍历数组可以通过循环结构实现常见的有for循环和增强for循环。
1. for循环遍历数组
for (int i 0; i lt; arrayName.length; i) {// 访问数组元素arrayName[i]// 执行其他操作
}在for循环中使用一个循环变量i来作为索引从 0 开始逐渐增加直到达到数组长度减 1 为止。该方法适用于需要根据索引进行操作的情况。
2. 增强for循环遍历数组
for (dataType element : arrayName) {// 访问数组元素element// 执行其他操作
}增强 for 循环是Java 5中引入的一种遍历数组的简化方法。它可以直接遍历数组中的每个元素不需要使用索引变量。该方法适用于只需要访问数组元素而不需要索引的情况。
3. 遍历多维数组
遍历多维数组可以嵌套使用多个循环每层循环负责遍历一维数组的元素。
for (int i 0; i lt; arrayName.length; i) {for (int j 0; j lt; arrayName[i].length; j) {// 访问数组元素arrayName[i][j]// 执行其他操作}
}通过嵌套的循环可以依次遍历每个二维数组的元素。
五、多维数组
多维数组是指包含多个一维数组的数组。例如二维数组是一种常见的多维数组它包含多个一维数组作为其元素。
1. 二维数组的定义和初始化
在Java中可以使用以下语法来定义二维数组 dataType[][] arrayName new dataType[rowLength][columnLength];其中dataType是二维数组中元素的数据类型arrayName是二维数组的名称rowLength表示二维数组的行数columnLength表示二维数组的列数。
二维数组的初始化可以通过静态初始化和动态初始化两种方式与一维数组类似。
2. 访问和操作二维数组元素
要访问二维数组中的元素可以使用以下语法 arrayName[rowIndex][columnIndex]其中arrayName是二维数组的名称rowIndex是要访问的元素所在行的索引columnIndex是要访问的元素所在列的索引。
可以通过修改二维数组元素的值来操作二维数组。与一维数组类似使用以下语法来修改二维数组的元素值 arrayName[rowIndex][columnIndex] newValue;六、数组的注意事项和扩展
1. 数组长度的不可变性
数组一旦创建后其长度就是固定的无法动态改变。如果需要存储更多的元素可以考虑使用动态数组或集合类。
2. 数组的复制和排序
可以使用 System.arraycopy() 方法或 Arrays.copyOf() 方法来复制数组
使用 System.arraycopy() 方法
int[] sourceArray {1, 2, 3, 4, 5};
int[] targetArray new int[sourceArray.length];System.arraycopy(sourceArray, 0, targetArray, 0, sourceArray.length);使用 Arrays.copyOf() 方法
int[] sourceArray {1, 2, 3, 4, 5};
int[] targetArray Arrays.copyOf(sourceArray, sourceArray.length);可利用Arrays.sort() 方法对数组进行 排序 // 使用 Arrays.sort() 方法对数组进行排序Arrays.sort(numbers);
}3. 数组的查找
通过 binarySearch 方法能对排序好的数组进行二分查找法操作
import java.util.Arrays;public class BinarySearchExample {public static void main(String[] args) {// 示例数组必须为已排序的数组int[] array {10, 20, 30, 40, 50, 60, 70};int key 40;int index Arrays.binarySearch(array, key);
}4. 动态数组的实现ArrayList
在Java中除了使用数组外还可以使用 ArrayLis t类来实现动态数组。ArrayList 可以自动调整长度并提供了丰富的方法来操作和管理元素。详情请到个人主页查看关于ArrayList的入门博客
总结
欢迎各位留言交流以及批评指正如果文章对您有帮助或者觉得作者写的还不错可以点一下关注,点赞收藏支持一下。 博客的参考源码可以在我主页的资源里找到如果在学习的过程中有什么疑问欢迎大家在评论区向我提出