千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > 什么是java数组?

什么是java数组?

来源:千锋教育
发布人:qyf
时间: 2023-03-22 17:50:00 1679478600

  1.数组简介

  我们可以想一个问题,如果现在让你存储100个学生的数学成绩,你该怎么存储呢?难道要定义100个变量,每个变量代表一个学生的成绩吗?如果是存储1000个、10000个、乃至更多学生的成绩怎么办?如果是定义一个个变量进行存储,就太麻烦了,而且这也不符合项目开发时对复用性、可读性等方面的要求。所以我们肯定不能这么编程。那么现在解决的办法,就是可以使用”数组“来进行实现。

  2.概念

  所谓的数组(Array),就是数据的组合,简单地说就是一个存储容器,里面可以包含多个数据。该容器在内存中开辟了一块连续的存储空间,可以用来保存相同类型的多个数据。给大家举个栗子,下图的这个东西你见过吗?

  有的人说这不是鸡蛋吗?其实壹哥想让你看的是存储这些鸡蛋的”容器“--鸡蛋托!一个鸡蛋托有多个存储格子,每个格子只能存储一个鸡蛋,并且这些格子只能用来存储鸡蛋,不能存储其他的东西。一个鸡蛋托可以存储的鸡蛋数量是有限的,不能无限存储。

  其实Java里的数组就类似于是”鸡蛋托“,数组中存储的数据元素就是一个个的”鸡蛋“。一个数组占据了内存中的一片连续空间,只能存储相同类型的数据,数组有一定的存储空间。我们在创建数组时,需要先声明数组的类型,之后该数组中只能存储指定类型的数据。

  ●我们把存储在数组中的每一个数据,称为”数据元素“。这些数据元素会按着一定的顺序排列存储,并赋予每个数据元素对应的编号。我们可以直接通过编号(索引、下标)的方式来调用指定位置上的数据元素,查找速度会很快。

  ●数组本身是引用类型,但数组中的数据元素可以是任何数据类型,包括基本数据类型和引用数据类型。

  ●数组创建时需要指定一个名称,并会在内存中开辟一整块连续的内存空间,数组名引用的就是这块连续空间的首地址(第一个地址)。

  ●数组创建后,长度一旦确定,就不能再被修改。

  3.特点

  ●数组中保存的数据,其数据类型必须是相同;

  ●数组的长度是固定的,一旦定义,其长度就不能被改变。

  4.分类

  Java里的数组,按照不同的标准可以有多种划分方式。

  ●按照维度:一维数组、二维数组、多维数组;

  ●按照数据类型:基本类型元素的数组、引用类型元素的数组(即对象数组)。

  5.默认值

  数组本身是引用类型,它的元素相当于是类的成员变量,因此数组一经分配内存空间,其中的每个元素也会按照成员变量的方式被进行隐式初始化。这些不同类型的数据元素有着自己对应的默认值:

  ●整型数组默认值:0;

  ●浮点型数组默认值:0.0;

  ●布尔类型数组默认值:false;

  ●字符型数组默认值:0 或者' '或者 '\u0000';

  ●引用类型数组默认值:null。

  其中null是一种特殊的值,表示当前对象在内存中没有指向任何的地址。而""表示一个空字符串,在内存中是有对应的内存地址的。

  6.数组长度

  每个数组都有一个length属性,代表它的长度(元素个数)。例如arr.length指明数组arr的长度。数组一旦初始化,其长度就是不可变的。

  7.数组元素的引用

  我们在定义并用new运算符创建数组之后,才可以引用数组中的每个元素。引用数据元素的方式是:

  数组名[数组元素下标]

  其中数组元素的下标也叫做索引。数组元素的下标可以是整型常量或整型表达式,如a[3]、b[i]、c[6*i]。另外数组元素的下标从0开始,所以一个长度为n的数组,其合法的下标取值范围是 0 —>n-1。如int a[]=new int[3]; 可引用的数组元素是a[0]、a[1]、a[2]。

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT