数组
认识数组
数组是具有相同数据类型且按一定次序排列的一组变量的集合体。即用一个变量名表示一批数据。Java为数组在内存中分配一段连续的空间,这段空间中存储数据的个数是固定的,数组就是一个容器,用来存一批同种类型的数据。
显而易见,我们在需要同时定义多个同类型的变量时使用数组。
数组的定义和访问
定义数组
Java中定义数组有两种语法格式: 数据类型 数组名[ ]
; 或数据类型[ ] 数组名
;
- 数组是什么数据类型,数组的元素就是什么数据类型
- 数组的特征是[ ]
- 数组是引用类型
数组的静态初始化
即将定义数组、为数组元素分配内存、数组元素初始化三步一起写,也就是在定义数组时直接给数组中的数据赋值这种方式称为静态初始化。标准格式是
数据类型[] 变量名 = new 数据类型[]{
元素1,元素2,元素3};
简化为:
数据类型[] 变量名 = {
元素1,元素2,元素3};
//例如:
String[] names = {
"张三", "李四", "王五"...};
System.out.println(names[1]);
数组的动态初始化
动态初始化不需要我们写出具体的元素,而是指定元素类型和长度就行。格式如下
数据类型[] 数组名; 数组名 = new 数据类型[数组长度];
例如: names = new String[5];
定义数组和为数组元素分配内存,这两步可以合并在一起写,例如:
String[] names = new String[5];
数组元素的访问
数组中存储的数据叫做元素;而且数组中的每一个元素都有一个编号与之对应,这个编号叫做索引,这个索引是从0依次递增的 整数。
要想访问数组中的元素,格式如下
// 数组名可以找到数组对象的地址,再通过索引就可以定位到具体的元素了
数组名[索引] // 索引 0 --> 长度 - 1
数组的遍历
所谓遍历意思就是将数组中的元素一个一个的取出来。
int[] ages = {
12, 24, 36};
for (int i = 0; i < ages.length; i++) {
// i的取值 = 0, 1, 2
System.out.println(ages[i]);
}
数组练习题及答案
1.定义一个含有五个元素的数组,并为每个元素赋值,求数组中所有元素的最小值
public class ArrayMin {
public static void main(String[] args) {
int[] arr = {
43,13,23,65,32};
int min = arr[0];
for (int num :arr
) {
if(num < min){
min = num;
}
}
System.out.println("最小值为:"+min);
}
}
2.创建一个长度为6的整数数组。请编写代码,随机生成六个0(包含)~100(不包含)之间的整数存放到数组中,然后计算出数组中所有元素的和并打印。
public class RandomSum {
public static void main(String[] args) {
int[] randomNums= new int[6];
Random random = new Random();
int sum= 0;
for (int i:randomNums
) {
i =random.nextInt(100);
System.out.println(i);
sum += i;
}
System.out.println(sum);
}
}
3.求出数组中索引与索引对应的元素都是奇数的元素
public class BothOdd {
public static void