Java基础之数组
程序员文章站
2024-01-16 12:33:04
Java基础之数组 数组是存储数据长度固定的容器,在同一个数组内要保证数据类型的一致. 数组是一种容器,将多个数据存储在一起 数组是存储数据长度固定的容器,在同一个数组内要保证数据类型的一致. 数组是一种容器,将多个数据存储在一起 格式 数组存储数据类型[] 数组名称 = new 数组存储数据类型[ ......
1.数组概念
-
数组是存储数据长度固定的容器,在同一个数组内要保证数据类型的一致.
-
数组是一种容器,将多个数据存储在一起
2.数组的定义
-
格式
数组存储数据类型[] 数组名称 = new 数组存储数据类型[长度];
int[] arr = new int[10];
-
数组格式详解
-
数组存储数据类型:明确声明了这是一个什么样的数组,即数组的数据类型,是一个什么样的数组
-
[]:声明这是一个数组
-
数组名称:给数组起个名字
-
new:声明对象的关键字
-
数组存储数据类型[长度]:明确声明了这个数组存储了多少个元素
-
数组长度一旦确定,便不可更改
-
-
数组定义格式2
数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3...};
int[] arr = new int[]{1,2,3,4,5}; -
数组定义格式3
数据类型[] 数组名 = {元素1,元素2,元素3...};
int[] arr = {1,2,3,4,5};
3.数组的访问
-
数组可以通过索引去访问数组中的元素
-
索引:每一个存储到数组的元素,都会自动拥有一个编号,从0开始,直到数组元素结束。这个编号就成为索引(index)
-
数组的长度属性:每个数组都有长度,而且固定。获取数组长度,可以通过语法:
数组名.length
获得,获得的结果是int类型的数字,也就是数组的长度。
*数组长度与索引的关系:数字长度-1=索引最大值*
public static void main(string[] args) {
int[] arr = new int[]{1,2,3,4,5};
//数组长度
int n = arr.length;
system.out.println("数组长度为:"+n);
}
-
通过数组的索引访问数组元素
-
为数组中的值赋值 数组名[索引编号] = 数值
-
获取数组中的元素 变量名 = 数组名[索引值]
-
1 public static void main(string[] args) { 2 int[] arr = new int[]{1,2,3,4,5}; 3 //通过索引给数组元素赋值 4 arr[0] = 10; 5 //获取数组元素 6 int i = arr[0]; 7 system.out.println(arr[0]); 8 system.out.println("i="+i); 9 }
4.数组遍历
-
数组遍历:就是将数组中的各个元素全部输出
public static void main(string[] args) { int[] arr = new int[]{1,2,3,4,5}; for (int i = 0; i < arr.length; i++) { system.out.print(arr[i]+" "); } }
-
获取数组中的最大值
思路:取数组中的一个元素,用该元素与其他元素比较,将最大的值保存在这个元素中,输出这个元素
实现:
public static void main(string[] args) { int[] arr = new int[]{34,23,56,21,19}; int max = arr[0]; for (int i = 0; i < arr.length; i++) { if (max<=arr[i]){ max=arr[i]; } } system.out.println("最大值"+max); }
-
数组反转
-
实现思想
-
将数组两端的元素交换位置
-
定义两个变量,保存数组的最大索引和最小索引
-
交换两个索引的位置
-
最小的索引++,最大的--,然后交换位置
-
比较两个索引,最小的超过最大的,结束
-
public static void main(string[] args) { int[] arr = new int[]{34, 23, 56, 21, 19,68,10}; system.out.print("反转前:"); for (int i = 0; i < arr.length; i++) { system.out.print(arr[i]+" "); } for (int minindex = 0, maxindex= arr.length-1;minindex<maxindex;minindex++,maxindex--) { int temp = arr[minindex]; arr[minindex]=arr[maxindex]; arr[maxindex]=temp; } system.out.println(" "); system.out.print("反转后: "); for (int i = 0; i < arr.length; i++) { system.out.print(arr[i]+" "); } }
-