首页 > 代码库 > 第5章 Java数组

第5章 Java数组

 

1.什么是数组

数组可以想象成一个巨大的盒子,这个盒子里面存放的是同一个数据类型的数据

例如:int[] scores = {78,68,94,93};

2.如何使用Java中的数组

2.1申明数组

使用前先声明,声明方式是:
数据类型[] 数组名;

数据类型 数组名[];

例:int[] scores;等价int scores;

2.2分配空间

第二步需要为数组分配可以用的空间是多少。
分配方式是:
数组名 = new 数据类型[数组长度]

例:scores = new int[5]

说明:第一步中我们先使用int[] scores定义了一个数组,第二步中,我们给了scores数组分配了5个长度。
上面两步可以合在一起:

int[] scores = new int[5];

2.3赋值

利用上两步,我们创建了一个数组,第三步就需要往数组里面填充数据了。方式如下:

scores[0]=89;
scores[1]=78;

2.4另外一种创建数组的方式

上面使用了三个步骤来创建了一个数组,但是我们还有另外一种方式来创建一个数组,这个方式将数组的声明,分配空间,赋值都合并在一起了,方法如下:

int[] scores = {78,89,78,98};

这个完全等价于:

int[] scores = new int[]{78,89,78,98};

注意:这个右边的int[]里面是什么都不填的

3.遍历数组

遍历java数组一般都是用for,跟其他语言是一样的,特点有两个:
1.数组的小标是从0开始
2.数组最后一个数的下标是:数组长度-1
遍历如下:

1 public class HelloWorld {
2     public static void main(String[] args) {
3         String[] hobbys = { "sports", "game", "movie" };
4         System.out.println("循环输出数组中元素的值:");
5         for(int i=0; i<hobbys.length; i++){
6          System.out.println(hobbys[i]);   
7         }

4.使用Arrays类操作数组

java中对数组的一些操作方法都在Arrays中,这里举两个例子,其他的方法可以查询java.util.Arrays类
Arrays类是在java.util.Arrays,用的时候要先导入

4.1数组排序

使用方法:Arrays.sort(数组名);

4.2将数组转化为字符串

使用方法:Arrays.toString(数组名);
一个例子如下;

 1 //导入Arrays类
 2 import java.util.Arrays;
 3 
 4 public class HelloWorld {
 5     public static void main(String[] args) {
 6 
 7         // 定义一个字符串数组
 8         String[] hobbys = { "sports", "game", "movie" };
 9 
10         // 使用Arrays类的sort()方法对数组进行排序
11         Arrays.sort(hobbys);
12 
13         // 使用Arrays类的toString()方法将数组转换为字符串并输出
14         System.out.println(  Arrays.toString(hobbys)          );
15     }
16 }

 

5.使用foreach操作数组

foreach方法其实是for方法的一个简化,是不需要下表而对数组遍历的一种方法,使用语法如下:
for(元素类型 元素变量 : 遍历对象){
执行的代码
}
举个例子:

 1 import java.util.Arrays;
 2 
 3 public class HelloWorld {
 4 
 5     public static void main(String[] args) {
 6 
 7         // 定义一个整型数组,保存成绩信息
 8         int[] scores = { 89, 72, 64, 58, 93 };
 9 
10         // 对Arrays类对数组进行排序
11         Arrays.sort(scores);
12 
13         // 使用foreach遍历输出数组中的元素
14         for ( int score :scores ) {
15             System.out.println(score);
16         }
17     }
18 }

6.Java中的二维数组

一维数组时,数组中每个位置保存的都是一个数据,二维数组中,数组中每个位置保存的都是一个数组,二维数组是一张表

6.1声明并分配空间

数据类型[][] 数组名=new 数据类型[行的个数][列的个数]
或者
数据类型[][] 数组名;
数组名 = new 数据类型[行的个数][列的个数]
例如:

int[][] num = new int[2][3]

6.2赋值

赋值是通过坐标赋值,坐标从0开始
数组名[行的索引][列的索引]=值;

例:num[0][0]=12;

6.3处理数据

二维数组处理数据是通过两个下坐标来的,通常遍历一个二维数组的时候是需要在一个for循环中再嵌套一个for循环

 

第5章 Java数组