数组是编程语言中最常见的一种数据结构,可以存储多个数据,每个数组元素存放一个数据,通过数组元素的索引(或者称为下标index)来访问数组元素。数组也是一种类型,它是引用类型。
4.6.1 定义数组
Java语言支持两种语法格式来定义数组,定义格式:
A:数据类型[] 数组名;
B:数据类型 数组名[];
举例:
A:int[] a; 定义一个int类型的数组a变量
B:int a[]; 定义一个int类型的a数组变量
注意:效果可以认为是一样的,都是定义一个int数组,但是念法上有些小区别。推荐使用第一种
4.6.2 数组的初始化
Java中的数组必须先初始化,然后才能使用。
如何对数组进行初始化呢?
A:何谓初始化呢? 就是为数组开辟内存空间,并为每个数组元素赋予值
B:有几种方式呢?
a:动态初始化 只指定长度,由系统给出初始化值
b:静态初始化 给出初始化值,由系统决定长度
动态初始化的格式:
数据类型[] 数组名 = new 数据类型[数组长度];
只初始化数组的长度,不带有默认值
举例:
int[] arr = new int[3];
静态初始化的格式:
初始化长度,同时带有默认值
int[] a = new int[]{11,12,13,14,15};
或者 int[] a = {11,12,13,14,15};
如何获取数组中的元素呢?
通过:
数组名[索引]
索引其实就是每个元素的编号,从0开始,最大索引是数组的长度-1。
注意说明:
int a[]; int[] a; //int类型的数组,只能放int类型的值
int a[] = new int[5] ;
a[0] = 10; //如果a[0] = 12.5f;则报错,因为12.5f是float类型的常量
System.out.println(a[0]);
基本数据类型、引用数据类型都可以定义数组,举例
double d[] ; Car car[];
4.6.3 使用数组
数组常用的方法就是访问数组元素,包括对数组元素进行赋值、取出数组元素的值。访问数组元素都是通过在数组引用变量后紧跟一个方括号[],方括号中是数组元素的索引值,索引值都是从0开始的。一个数组的索引值最大等于这个数组的长度减1。
举例1:int a[] = new int[10],这个int类型的数组长度为10,那么取第10个数就是a[9],如果编写代码的时候写成了a[10],编译不会出错,但是在运行时会出现异常:java.lang.ArrayIndexOutOfBoundsException:异常,这个就是数组索引越界异常。
举例2:
package com.langsin.test;
public class TestCar {
public static void main(String[] args) {
int num[] = {11,22,33,44,55} ;
for(int i=0;i<num.length;i++){
System.out.println("当前数值中的第"+(i+1)+"元素的值为"+num[i]);
}
}
}
输出结果为:当前数值中的第1元素的值为11
当前数值中的第2元素的值为22
当前数值中的第3元素的值为33
当前数值中的第4元素的值为44
当前数值中的第5元素的值为55
举例3:使用foreach进行遍历
for(数据类型 变量名称:数组名称){
}
public static void main(String[] args) {
int num[] = {11,22,33,44,55} ;
int i=1;
for(int n : num){
System.out.println("当前数值中的第"+i+"元素的值为"+n);
i++;
}
}
本文暂时没有评论,来添加一个吧(●'◡'●)