数组(小福版)

数组(小福版) 一.数组介绍1.JAVA数组的基本概念数组是一种用于存储相同类型数据元素的线性数据结构。在JAVA中数组是对象可以存储基本数据类型如int、char等或对象引用。数组长度固定创建后无法动态调整大小。2.数组的声明与初始化声明数组时需要指定数据类型和数组名称格式为数据类型[] 数组名或数据类型 数组名[]。初始化二.数组的定义格式和静态初始化1.在Java中数组是一种固定长度的数据结构用于存储相同类型的元素。以下是数组声明与初始化的几种常见方式元素类型[] 数组名; // 推荐方式 或 元素类型 数组名[]; // 不推荐兼容C/C风格int[] numbers; String names[];初始化数组数组初始化分为静态初始化和动态初始化两种方式。静态初始化在声明时直接指定数组元素编译器自动推断长度元素类型[] 数组名 {元素1, 元素2, ..., 元素N};静态初始化int[][] matrix {{1, 2}, {3, 4}, {5, 6}};动态初始化int[][] matrix new int[3][2]; // 3行2列2.注意事项◦ 数组长度通过数组名.length获取不可修改。◦ 尝试访问越界索引会抛出ArrayIndexOutOfBoundsException。◦ 基本类型数组默认初始化为0、false等对象数组初始化为null。三.数组的元素访问格式数组名[索引];索引索引是数组容器中空间的编号编号从0开始逐个1增长四.数组遍历操作​​​​​​ 1.for循环遍历 通过索引逐个访问数组元素适用于需要操作索引的场景。int[] arr {1, 2, 3}; for (int i 0; i arr.length; i) { System.out.println(arr[i]); }2.rrays.toString() 快速输出数组内容适合调试时使用。String[] strArr {A, B, C}; for (String s : strArr) { System.out.println(s); }3.Java 8 Stream API 支持函数式编程操作可链式调用过滤、映射等方法。double[] dArr {1.1, 2.2}; System.out.println(Arrays.toString(dArr));4.注意事项◦ 基本类型数组与对象数组的遍历方式存在差异◦ 遍历时修改元素值会影响原数组◦ 大数据量时考虑使用并行流提升性能◦ 注意数组越界异常处理五.数组案例-求偶数和有这样的一个数组元素值是{11557894687848649}。求出该数组中满足要求的元素和。要求是求和元素的十位和个位都不能是7并且只能是偶数。package ggone.java;public class sum {public static void main(String[]args) {int arr[] {68,27,95,88,171,996,51,210};int sum0;for(int x0;xarr.length;x) {if(arr[x]%10!7arr[x]/10%10!7arr[x]%20) {sumarr[x];}}System.out.println(满足要求的数之和sum);}}2.数组内容相同需求设计一个方法用于比较两个数组内容是否相同代码如下package ggone.java;public class sum {public static void main(String[]args) {int []arr {11,22,33,44,55};int []arr2 {11,22,33,44,55};//调用方法用变量接收boolean flagcompare(arr,arr2);System.out.println(flag);}public static boolean compare(int []arr,int []arr2) {if(arr.length!arr2.length){//首先比较长度如果长度不相等那么数组的内容一定不相等返回false。return false;}for(int x0;xarr.length;x) {if(arr[x]!arr2[x]) {return false;}}return true;}}