西安城市建设职业学院官方网站,360浏览器最新版本下载安装,泉州共创科技,网站建设首选建站系统Java 数组是 Java 编程中非常基础和重要的一个知识点。 以下是 Java 数组的主要学习内容#xff1a; 数组的几个特点 数组在声明时必须指定长度#xff0c;且长度不可变#xff1a;数组的长度在声明时就需要确定#xff0c;一旦确定就不能修改。因此#xff0c;在使用数组…Java 数组是 Java 编程中非常基础和重要的一个知识点。 以下是 Java 数组的主要学习内容 数组的几个特点 数组在声明时必须指定长度且长度不可变数组的长度在声明时就需要确定一旦确定就不能修改。因此在使用数组时需要仔细考虑数组大小以免出现数组越界等问题。 数组可以包含任意类型的数据Java 数组可以包含任意类型的数据包括基本数据类型如 int、double 等和引用类型如 String、Object 等。 数组元素按照顺序存储数组中的所有元素按照声明时的顺序依次存储可以通过下标来访问和修改数组元素。 数组是一种对象类型在 Java 中数组也是一种对象类型也就是说数组变量存储的是一个对象的引用。 数组长度可以通过 length 属性获取数组具有一个 length 属性可以用于获取数组的长度例如int[] nums {1, 2, 3}; System.out.println(nums.length); // 输出 3 需要注意的是数组是一种静态数据结构其大小在声明时就已经确定因此无法动态地添加或删除元素。同时数组也存在许多操作上的限制如无法直接进行插入或删除操作而只能通过复制元素的方式实现。因此在设计数据结构时需要根据实际需求选择合适的数据结构。定义数组声明数组时需要指定数组长度和元素类型可以使用数组初始化器或者循环对数组进行初始化。 int[] num1 new int[length];
int[] num2 new int[]{123};
String[] names {Alice, Bob, Charlie};访问数组元素通过下标访问数组元素下标从0开始计数。例如a[0] 表示数组 a 的第一个元素。 String[] names {Alice, Bob, Charlie};System.out.println(names[0]);System.out.println(names[1]);System.out.println(names[2]);}数组遍历循环结构如for、while或 foreach 循环来遍历数组中的所有元素。 //for循环
String[] names {Alice, Bob, Charlie};for (int i 0; i names.length; i) {System.out.println(names[i]);}
//增强for循环 foreachString[] names {Alice, Bob, Charlie};for (String name : names) {System.out.println(name);}数组的排序Java 提供了 Arrays.sort() 方法可以对数组进行排序操作。 int[] nums new int[]{3,2,1};Arrays.sort(nums);for (int i : nums) {System.out.println(i);}}数组的查找可以使用循环遍历或二分查找等算法实现。 public static int search(int[] nums, int target) {// 避免当 target 小于nums[0] nums[nums.length - 1]时多次循环运算if (target nums[0] || target nums[nums.length - 1]) {return -1;}int leftNode 0;//左边下标int rightNode nums.length - 1;//右边下标while (leftNode rightNode) { //或者用 while(leftNode rightNode)因为left right的时候在[leftNode, rightNode)是无效的空间所以使用 int midNdoe ((rightNode - leftNode) 1) leftNode;// 等同于(left right)/2 --防止溢出if (target nums[midNdoe]) {return midNdoe;} else if (target nums[midNdoe]) {leftNode midNdoe 1;//把左边下标移动 缩小空间} else {rightNode midNdoe - 1; //把左边下标移动 缩小空间 若用另一种方法则 rightNode midNode [target 在左区间在[left, middle)中]}}return -1;}