数组

重点:
  • 定义数组
  • 初始化数组
  • 遍历数组
  • Arrays类
难点:
  • 遍历数组
  • 二维数组及使用

1.1一维数组
1.1.1定义数组
在Java中,定义数组的语法有两种。
语法:
  • 数据类型[] 数组名=new 数据类型[数组长度];
  • 数组类型 数组名[]=new 数组类型[数组长度];
数组元素分配的初始值:
数组元素类型 默认初始值
byte、short、int、long 0
float、double  0.0
char '\u0000'
booleanfalse
引用数据类型null

1.1.2数组元素的表示与赋值
由于定义数组时,内存分配的是连续空间,所以数组元素在数组里顺序排列编号,该编号即元素下标,它标明了元素在数组 中的位置。
语法:
数组名[下标值]
1.1.3数组的初始化
所谓数组初始化,就是在 定义数组的同时一并完成赋值操作
语法:
  • 数据类型 [] 数组名={值1,值2,值3,……,值n};
  • 数组类型 [] 数组名=new 数据类型[]{值1,值2,值3,……,值n}
1.1.4遍历数组
在编写程序时,数组和循环往往结合在一起使用,可以大大地简化代码,提高程序效率。通常,使用for循环遍历数组。

2.1二维数组
Java中定义和操作多维数组的语法与一维数组类似。在实际应用中,三维及以上的数组很少使用,主要使用二维数组。
语法:
  • 数组类型 [][] 数组名;
  • 数组类型 数组 [][];
需要强调的是,虽然从语法上看,Java支持多维数组,但从内存分配原理的角度讲,Java中只有一维数组,没有多维 数组。或者说,表面上是多维数组,实质上都是一维数组。
2.2二维数组及其使用
1.初始化二维数组
二维数组也可以进行初始化操作,与一维数组类似,同样采用如下两种方式,要注意大括号的结构及书写顺序。
例:
  • int[][] score=new int[][]{{90,32,43,43,23},{42,32,44},{67}};
  • int score[][]={{90,32,43,43,23},{42,32,44},{67}};
2.二维数组的遍历
例:
public static void main(String[] args){
   int [][] array=new int[][]{{90,32,43,43,23},{42,32,44},{67}};
   int total;
   for(int i=0;i<array.length;i++){
       String str=(i+1)+"班";
       total=0;
       for(int j=0;j<array[i].length;j++){
        total+=array[i][j];
       }
       System.out.println(str+"总成绩:"+total);
   }
}
3.1Arrays类及其常用方法
JDK中提供了一个专门用于操作数组的工具类, 即Arrays类,位于java.util包中。该类提供了一系列方法来操作数 组,如 排列、复制、比较、填充等 ,用户直接调用这些方法即可,不需要自己编写实现,降低了开发难度。
Arrays类常用方法
返回类型  方法 说明
boolean equals(array1,array2)比较两个数组是否相等
void  shrt(array)对数组array的元素进行升序排列
StringtoString()将一个数组array转换成一个字符串
void fill(array,val)把数组array的所有元素都赋值为val
与array数组类型一致copyOf(array,length)把数组array复制成一个长度为length的新数组
intbinarySearch(array,val)查询元素值val在数组array中的下标

总结:
  • 数组是可以再内存中连续存储多个元素的结构。数组中的所有元素必须属于相同的数据类型。
  • 数组中的元素通过数组下标进行访问,数组下标从0开始。
  • 二维数组实际上是一个一维数组,它的每个元素又是一个一维数组。
  • 使用Array类提供的方法可以方便地对数组中的元素进行排序、查询等操作。
  • JDK1.5之后提供了增强for循环,可以用来实现对数组和集合中数据的访问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值