第三章数组

第三章数组

数组的基本概念与作用

数组是相同数据类型元素的集合。
数组本身是引用数据类型,即对象。但是数组可以存储基本数据类型,
也可以存储引用数据类型。

数组的创建

数组的声明的两种方式:
数据类型 [] 数组名字 例如:int [] a;
数据类型 数组的名字 [] 例如: int a [];
注意:
在Java语言中两种声明方法没有任何区别,但是建议大家用第一种,
避免混淆a的数据类型。

例如:第一种像int a[],b;就容易出错,因为a[]是个数组,而b是个整形。第二种int[] a,b;两个都是数组。

● 数组创建的三种方式:
● 声明数组的同时,根据指定的长度分配内存,但数组中元素值都为默认
的初始化值
int[] ary0 = new int[10];
● 声明数组并分配内存,同时将其初始化
int[] ary1 = new int[]{1, 2, 3, 4, 5};
● 与前一种方式相同,仅仅只是语法相对简略
int[] ary2 = {1, 2, 3, 4,5 };

从另一个角度,数组创建可以分为动态和静态两种
• 动态创建数组(没有为元素赋值,可以结合for循环进行赋值)
char[] chAry = new char[10];
• 静态创建数组,在创建的时候,即为每个元素赋初值
int[] ary1 = new int[]{1, 2, 3, 4, 5};
● 数组的长度:length属性
int [] b1 = new int []{1,2,3,4,5,6,7};

从另一个角度,数组创建可以分为动态和静态两种
• 动态创建数组(没有为元素赋值,可以结合for循环进行赋值)
char[] chAry = new char[10];
• 静态创建数组,在创建的时候,即为每个元素赋初值
int[] ary1 = new int[]{1, 2, 3, 4, 5};
● 数组的长度:length属性
int [] b1 = new int []{1,2,3,4,5,6,7};
System.out.println(b1.length);

注意:数组不能直接输出。例如:

int[] a = new int[5];

System.out.println(a);

这个输出的是地址[I@1b6d3586//也可以修改toString方法进行输出,后面会写到。

数组元素的访问:
• 数组名字[索引] 例如:a[0],a[1];
• 注意:
• 数组的索引从0开始。
• 索引的数据类型是整型
• 索引最大值和数组长度始终差1。

数组迭代的两种方式:
第一种:for循环
int [] b1 = new int []{1,2,3,4,5,6,7};
数组的迭代
for(int i =0;i<b1.length;i++){

System.out.println(b1[i])

}

数组迭代的两种方式:
第二种:增强for循环
int [] b1 = new int []{1,2,3,4,5,6,7};
for(数组元素的类型 临时变量名字 :数组的名字){
System.out.println(临时变量名字 );
}
即:
for(int x:b1){
System.out.println(x);
}

二维数组

二维数组的定义:
数组的数组—二维数组的每一个元素是一个一维数

例如:
int [][]a = {{1,2,3},{1,2,3},{1,2,3}};

二维数组的声明:


int [][] a;
int a2[][];
●注意:建议用第一种,不容易混淆a的数据类型

数组创建
int [][]a = new int[][]{{1,2,3},{1,2,3},{1,2,3}};
int [] [] b = {{1,2,3},{1,2,3},{1,2,3}};
int [][] c = new int[3][5];
● int[][] arr = new int[3][5];—定义了一个整型的二维数组 ,这个二维数组有3
个一维数组,每一个一维数组包含5个元素。

二维数组的迭代:

ew int[3][5];
● int[][] arr = new int[3][5];—定义了一个整型的二维数组 ,这个二维数组有3
个一维数组,每一个一维数组包含5个元素。

二维数组的迭代:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值