【读书笔记】《java从小白到大牛》数组

quange 2022-5-5 143 5/5

在计算机语言中数组是非常重要的集合类型,大部分计算机语言中数组具有如下三个基本特性:

  • 01. 一致性:数组只能保存相同数据类型元素,元素的数据类型可以是任何相同的数据类型。
  • 02. 有序性:数组中的元素是有序的,通过下标访问。
  • 03. 不可变性:数组一旦初始化,则长度(数组中元素的个数)不可变。

在Java中数组的下标是从零开始的。Java数组下标访问运算符是中括号,如intArray[0],表示访问intArray数组的第一个元素,0是第一个元素的下标。另外,Java中的数组本身是引用数据类型,它的长度属性是length。数组可以分为:一维数组和多维数组

一维数组

当数组中每个元素都只带有一个下标时,这种数组就是“一维数组”。数组是引用数据类型,引用数据类型在使用之前一定要做两件事情:声明初始化

数组的声明就宣告这个数组中元素类型,数组的变量名。注意 数组声明完成后,数组的长度还不能确定,JVM(Java虚拟机)还没有给元素分配内存空间

元素数据类型[] 数组变量名;
元素数据类型数组变量名[];

声明完成就要对数组进行初始化,数组初始化的过程就是为数组每一个元素分配内存空间,并为每一个元素提供初始值。初始化之后数组的长度就确定下来不能再变化了。

提示 有些计算机语言虽然提供了可变类型数组,它的长度是可变的,这种数组本质上是创建了一个新的数组对象,并非是原始数组的长度发生了变化。数组初始化可以分为静态初始化动态初始化。

静态初始化就是将数组的元素放到大括号中,元素之间用逗号(,)分隔。

int[] intArray;
//静态初始化int数组
intArray = {21,32,43,45};
String[] strArray;
//静态初始化Stirng数组
strArray = {"张三","李四","王五","董六"};
//声明同时初始化数组
int intArray[] = {21,32,43,45}

动态初始化使用new运算符分配指定长度的内存空间

int intArray[];
// 动态初始化int数组
intArray = new int[4];
intArray[0] = 21;
intArray[1] = 32;
intArray[2] = 43;
intArray[3] = 45;
// 动态初始化String数组
String[] stringArray = new String[4];
// 初始化数组中元素
stringArray[0] = "张三";
stringArray[1] = "李四";
stringArray[2] = "王五";
stringArray[3] = "董六"; 

数据类型默认值

【读书笔记】《java从小白到大牛》数组

多维数组

当数组中每个元素又可以带有多个下标时,这种数组就是“多维数组”

二维数组

Java中声明二维数组需要有两个中括号,具体有三种语法

元素数据类型[][] 数组变量名;

元素数据类型数组变量名[][];

元素数据类型[] 数组变量名[];

二维数组的初始化也可以分为静态初始化动态初始化

//静态初始化
int intArray[][] = { { 1, 2, 3 }, { 11, 12, 13 }, { 21, 22, 23 }, { 31, 32, 33 } };

//动态初始化
int[][] intArray = new int[4][3];

不规则数组

动态初始化不规则数组比较麻烦,不能使用new int[4][3]语句,而是先初始化高维数组,然后再分别逐个初始化低维数组.

不规则数组访问和遍历可以使用for和for-each循环,但要注意下标越界异常发生。

int intArray[][] = new int[4][];//先初始化高维数组为4

//逐一初始化低维数组
intArray[0] = new int[2];
intArray[1] = new int[1];
intArray[2] = new int[3];
intArray[3] = new int[3];
- THE END -
最后修改:2022年5月5日
0

版权声明:
一、本站致力于为软件爱好者提供国内外软件开发技术和软件共享,着力为用户提供优资资源。
二、本站提供的所有下载文件均为网络共享资源,请于下载后的24小时内删除。如需体验更多乐趣,还请支持正版。
三、我站提供用户下载的所有内容均转自互联网。如有内容侵犯您的版权或其他利益的,请编辑邮件并加以说明发送到站长邮箱。站长会进行审查之后,情况属实的会在三个工作日内为您删除。

共有 0 条评论