文章目录
一、数组
-
数组介绍
数组可以存放多个同一类型的数据。数组也是一种数据类型,是引用类型。即:数组就是一组数据
-
数组快速入门
-
数组的使用
-
使用方式1-动态初始化
(1)数组的定义
数据类型 数组名[]=new 数据类型[大小]
int a[]=new int[5];//创建了一个数组,名字a,存放5个int
说明:这是定义数组的一种方法。为了让大家明白,我画数组内存图说明
(2)数组的引用(使用)
数组名[下标/索引/index]比如:你要使用a数组的第3个数a[2]
-
使用方式2-动态初始化
(1)先声明数组
语法:数据类型 数组名[];也可以数据类型[] 数组名;
int a[];或者int[] a;
(2)创建数组
语法:数组名=new 数据类型[大小];
a=new int[10];
-
使用方式3-静态初始化
初始化数组
语法:数据类型 数组名[]={元素值,元素值…}
int a[]={2,5.6,7,8,89,90,34,56};
如果知道数组有多少元素,具体值上面的用法相当于:
int a[]=new int[9]; a[0]=2;a[1]=5;a[2]=6; a[3]=7;a[4]=8;a[5]=89; a[6]=90;a[7]=34;a[8]=56;
-
-
数组使用注意事项和细节
-
数组是多个相同类型数据的组合,实现对这些数据的统一管理
-
数组中的元素可以是任何数据类型,包括基本类型和引用类型,但是不能混用。
-
数组创建后,如果没有赋值,有默认值
int 0, short 0, byte 0, long 0, float 0.0 , double 0.0, char \u0000,boolean false, String null
-
使用数组的步骤1声明数组并开辟空间2给数组各个元素赋值3使用数组
-
数组的下标是从0开始的。
-
数组下标必须在指定范围内使用,否则报:下标越界异常,比如
int []arr=new int[5];则有效下标为0-4 -
数组属引用类型,数组型数据是对象(object)
-
-
数组赋值机制
-
基本数据类型赋值,这个值就是具体的数据,而且相互不影响。
int n1 = 2;int n2 =n1;
-
数组在默认情况下是引用传递,赋的值是地址。
int[] arr1 = {1,2,3}; int[] arr2 = arr1;
-
二、多维数组(以二维数组为例)
- 多维数组
如果数组的维数不止一个就可以被称为多维数组
下面以二维数组为例介绍一下多维数组的使用
-
二维数组的使用
-
使用方式1:动态初始化
1)语法:类型[] [] 数组名=new 类型[ 大小 ] [ 大小 ]
2)比如:int a[] []=new int[2] [3]
-
使用方式2:动态初始化
1)先声明:类型 数组名[] [];2)再定义(开辟空间) 数组名 = new 类型[大小] [大小]
3)赋值(有默认值,比如int类型的就是0)
-
使用方式3:动态初始化-列数不确定
public class td{ public static void main(String[] args){ /* 看一个需求:动态创建下面二维数组,并输出 i = 0 : 1 i = 1 : 2 2 i = 2 : 3 3 3 一个有三个一维数组,每个一维数组的元素是不一样的*/ int[][]arr = new int[3][];//创建二维数组,但是只是确定一维数组的个数 for(int i =0; i < arr.length; i++){//遍历arr每个一维数组 //给每个一维数组开空间new //如果没有给一维数组new,那么arr[i]就是null arr[i] =new int[i + 1]; //遍历一维数组,并给一维数组的每个元素赋值 for(int j = 0; j < arr[i].length; j++){ arr[i][j]=i + 1;//赋值 } } System.out.println( "=====arr元秦====="); //遍历arr输出 for(int i = 0; i < arr.length; i++){ //输出arr的每个一维数组 for(int j = 0; j < arr[i].length; j++){ System.out.print(arr[i][j] + " "); } System.out.println();//换行 } } }
-
使用方式4:静态初始化
1)定义类型数组名[] []={{值1,值2…},{值1,值2…},{值1,值2…}}
2)使用即可[固定方式访问]
-
-
二维数组使用细节和注意事项
1.一维数组的声明方式有:
int[] x或者int x[]2.二维数组的声明方式有:
int[] [] y或者int[] y[]或者int y[] []
3.二维数组实际上是由多个一维数组组成的,它的各个一维数组的长度可以相同,
也可以不相同。比如:map[] []是一个二维数组
map [] [] ={{1,2},{3,4,5}}
由map[0]是一个含有两个元素的一维数组,map[1]是一个含有三个元素的一维数组构成,我们也称为列数不等的二维数组。 -
length的使用
对于一维数组,“数组名.length”的值就是数组中元素的个数;对于二维数组,“数组名.length”的值是它含有的一维数组的个数