在计算机语言中数组是非常重要的集合类型,大部分计算机语言中数组具有如下三个基本特性:
- 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中声明二维数组需要有两个中括号,具体有三种语法
元素数据类型[][] 数组变量名; 元素数据类型数组变量名[][]; 元素数据类型[] 数组变量名[];
二维数组的初始化也可以分为静态初始化和动态初始化。
//静态初始化 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];
版权声明:
一、本站致力于为软件爱好者提供国内外软件开发技术和软件共享,着力为用户提供优资资源。
二、本站提供的所有下载文件均为网络共享资源,请于下载后的24小时内删除。如需体验更多乐趣,还请支持正版。
三、我站提供用户下载的所有内容均转自互联网。如有内容侵犯您的版权或其他利益的,请编辑邮件并加以说明发送到站长邮箱。站长会进行审查之后,情况属实的会在三个工作日内为您删除。
如若转载,请注明出处:https://www.quange.cc/note/java/java-books-note/1348.html
共有 0 条评论