2.8.1 数组的定义

本文介绍了数组的基本概念,包括数组的定义、为何使用数组以及一维数组的声明、初始化和元素使用。数组是一组有序的元素序列,方便存储和处理相同类型的数据。文章详细阐述了一维数组的声明方式,如`int[] arr;`,并讲解了静态和动态初始化的区别。数组元素通过下标访问,如`arr[0]`。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、何为数组

关于数组,百度百科的定义是这样说的,数组(Array) 是有序的元素序列。
若将有限个类型相同的变量的集合命名,那么这个名称为数组名
组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标
由此我们可以找到这样几个关键字,数组,数组名,数组元素,下标。
简单的来说:
数组中存放着多个相同类型的数据
这一系列数据有序的放到一起的组合的名字叫数组名
为了区分数组中的元素,为其依次编号为0,1,2,…这些编号,我们叫下标

二、为何要使用数组

举个小栗子:需要存储一个班级50个人的Java成绩,如果不用数组,
我们大概会这样定义变量,float a,b,c,d,e…
或者这样float score1,score2,score3,score4,…score100,
那么如果要计算他们的和,我们需要这样:
sum = a +b+c+d…
或者 sum = score1+score2+score3…score100
但是无论哪一种,你会发现,处理起来很麻烦,需要手动一个个去操作,而我们明明知道,他们都是浮点型,都表示的是成绩,有着相同的特征,如果有了数组,马上会不一样。所以,数组的存在,是为了方便表示数据之间的关系,方便存储,计算等操作的。
数组按维度分可以分为一维数组、二维数组,当然更复杂的也有多维数组,这个暂不考虑。

三、一维数组

  1. 一维数组的声明
    数据类型[] 数组名;
    如:int[] arr; 表明声明了一个int类型的数组,名字叫arr,那么这个数组中就只能放int类型数据
    float[] arr1; 表明声明了一个float类型的数组,名字叫arr1,那么这个数组中就只能放float类型数据
    当然,亦可以使用 数据类型 数组名[]; 即int arr[];不过这种方式不被阿里编程者规范所推荐。我们也要求大家使用第一种。

  2. 一维数组初始化
    之前介绍过,数组是多个相同数据类型的数据的组合,第1点中的数组声明只是规定了数组的元素类型和数组名,还需要规定这个数组里元素个数及数据的初始取值,这个部分叫做数组初始化。
    数组的初始化根据给定初值和使用默认初值两种方式,分别叫数组的静态初始化和动态初始化。
    int[] arr;
    float[] arr1;

  • 静态初始化: 数组名 = new 数据类型[]{元素初值1,元素初值2…}
	arr = new int[]{10,20,30,45,21};
	arr1= new float[]{1.1f,2.5f,3.4f,67.1f};
  • 动态初始化: 数组名 = new 数据类型[数组长度]
	arr = new int[5];
	arr1 = new float[4];

由以上操作对比可知,
arr定义的是int类型的数组,在初始化的时候,必须new int,arr1是float类型的数组,在初始化的时候必须new float,其中new 是一个关键词,可以理解为分配int的空间或者分配float类型的空间等。
静态初始化[]中的数组长度为空,真实数组长度为其后{}里的数据个数,并且依次为0,1,2…号数组赋值为10,20,30… 即随后第1个元素,即下标为0的元素,arr[0]就是10,依次类推
动态初始化[]中需要规定数据,这个数据表示数组元素的个数,故必须为 >0的整数,其元素的值为默认值

数据类型默认初始化值
byte,short,int,long0
float,double0.0
char一个空字符’\u0000’
booleanfalse
其他引用数据类型null,表示不引用任何类型

3.数组的声明与初始化合并
与变量的定义和初始化可以合并一样,数组的初始化也可以合并,

	 int[] arr;
	 arr = new int[]{1,2,4,6,7,10};
	 //以上代码等价于下面的定义,当然同一个文件中不能存在相同的变量名,换个名字
	 int[] arr1 = new int[]{1,2,4,6,7,10};

4.数组元素的使用
数组元素的语法结构: 数组名[下标]
举个小栗子

	int[] arr = new int[5];
	arr[1] = 80;//单独为第二个元素赋值为80
	arr[3] = 100;//单独为第四个元素赋值为100

数组元素分别为 arr[0],arr[1],arr[2],arr[3],arr[4]。
注意: 数组元素的下标必须是>=0整数,且不能超过数组元素个数-1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值