数组类型(上)

一、数组的定义

1.定义数组的语法:数组类型[] 数组名称=new 数组类型[数组长度]

例如:

int[] arr1=new int[5];
double[] arr2=new double[6];
boolean[] arr3=new boolean[7];

//输出数组的地址空间
System.out.println(arr1);
System.out.println(arr2);
System.out.println(arr3);

//输出数组内容
System.out.println(Arrays.toString(arr1));
System.out.println(Arrays.toString(arr2));
System.out.println(Arrays.toString(arr3));

输出结果:

[I@15db9742
[D@6d06d69c
[Z@7852e922

//因为在数组类中没有重写toString方法,所以用数组名只能按照父类的toString方法输出数组的内存地址(可以看看原码,如下:)

//但是可以通过Arrays.toString()方法输出数组的值(原码如下:)

输出结果:

[0, 0, 0, 0, 0]
[0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
[false, false, false, false, false, false, false]

2.数组的语法特点:

①数组所有元素初始化为默认值,整型都是0,浮点型都是0.0,布尔型都是false;

②数组一旦创建后,大小旧不可改变,除非重新指向新的内存空间所以说数组的长度固定,例如:

//当超过数组长度时,会抛出数组下标越界的异常

int arr01[]=new int[5];
arr01[5]=99;
System.out.println(Arrays.toString(arr01));

③访问数组中的某一元素,需要使用索引,数组的索引从0开始

④可以修改数组中的某一个元素,使用赋值语句,例如:

int arr01[]=new int[5];
arr01[0]=99;
System.out.println(Arrays.toString(arr01));

输出结果:[99, 0, 0, 0, 0]

⑤可以用“数组变量.length”获取数组的大小

二、数组的初始化(分配内存空间+存入数据)

定义数组时,直接指定初始化的元素,这样就不必写出数组大小,而是由编译器自动推算数组大小。例如:       

//方式一:先创建数组,再逐个存储元素
String[] cityArr1=new String[5];
cityArr1[0]="西安";
cityArr1[1]="宝鸡";
cityArr1[2]="咸阳";
cityArr1[3]="榆林";
cityArr1[4]="延安";
System.out.println("cityArr1"+Arrays.toString(cityArr1));

//方式二:创建数组,并直接初始化数组中的元素(不需要指定数组长度,也不需要使用new关键字来创建数组)
String[] cityArr2={"成都","重庆","贵州","苏州","南京","哈尔滨"};
System.out.println("cityArr2"+Arrays.toString(cityArr2));

//方式三:创建数组,并直接初始化数组中的元素(使用new关键字)
String[] cityArr3=new String[]{"北京","上海","广州"};
System.out.println("cityArr3"+Arrays.toString(cityArr3));
//该方式可以让数组重新分配内存空间,并初始化
cityArr3=new String[]{"汉中","渭南","商洛"};
System.out.println("cityArr3"+Arrays.toString(cityArr3));

输出结果:

cityArr1[西安, 宝鸡, 咸阳, 榆林, 延安]
cityArr2[成都, 重庆, 贵州, 苏州, 南京, 哈尔滨]
cityArr3[北京, 上海, 广州]
cityArr3[汉中, 渭南, 商洛]                                                                                                      

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值