一、数组
1.1 数组的基础定义
数组是内存中的一段空间,可以理解为一个“盒子”,里面按照顺序存放很多类型相同的数据,比如学生的成绩、科目信息等等。数组中的元素都可以通过下标来进行访问,需要注意的是,下标是从0开始的,对应的是数组中第一个元素。
1.2 如何使用Java中的数组
- 声明数组
语法:数据类型[] 数组名 或者 数据类型 数组名[]
(数组名可以使任意合法的变量名)
1 | int[] scores;//存储学生成绩,类型为整型 |
- 分配空间
指定数组中最多可以存储多少个元素
语法:数组名 = new 数据类型[数组长度]
1 | scores = new int[5]; |
不过也可以直接将声明和分配进行合并,同时进行
1 | int[] scores = new int[5]; |
- 赋值
创建成功之后就可以存放数组了
1 | scores[0] = 89; |
- 处理数组中的数据
全部操作成功之后即可使用Java语句对数组进行操作了。
1 | System.out.println(scores[0]); |
在Java中,提供了另外一种声明赋值的方法:
1 | int[] scores = {1, 2, 3, 4, 5}; |
等价于:
1 | int[] scores = new int[]{1, 2, 3, 4, 5}; |
1.3 使用循环操作数组
在实际开发中我们会经常使用一些循环操作以输出数组中的数据,数组名.length代表获取数组的长度,但要小心的是数组的越界问题,即数组的下标范围有界限限制。
1 | String[] hobbys = { "sports", "game", "movie" }; |
1.4 使用Arrays类操作Java中的数组
Arrays 类是 Java 中提供的一个工具类,在 java.util 包中。该类中包含了一些方法用来直接操作数组,比如可直接实现数组的排序、搜索等。
想要使用Arrays的方法,就得在程序之前导入包,语句为:
1 | import java.util.Arrays; |
- 排序
使用语法为:Arrays.sort(数组名);
- 将数组转换为字符串
语法:Arrays.toString(数组名);
1 | //导入Arrays类 |
1.5 使用foreach操作数组
foreach 并不是 Java 中的关键字,是 for 语句的特殊简化版本,在遍历数组、集合时, foreach 更简单便捷。从英文字面意思理解 foreach 也就是“ for 每一个”的意思
语法:
1 | for (元素类型 元素变量 : 遍历对象) { |
示例:
1 | import java.util.Arrays; |
1.6 二维数组
和一维数组很相似,二维数组可以理解为是特殊的一维数组。二维数组有两个下标,分别表示第几行、第几列,同样的也是从0开始第一行。
- 声明并分配空间
1 | //数据类型[] 数组名 = new 数据类型[行数][列数]; |
- 赋值
1 | //1.数组名[行索引][列索引] = 值; |
- 数组处理
1 | int[][] num = {{1, 2, 3}, {4, 5, 6}}; |
二、方法
1.1 如何定义方法
语法:访问修饰符 返回值类型 方法名(参数列表){方法体}
主要是包含下面四种:
- 无参无返回值
- 无参带返回值
- 有参无返回值
- 有参带返回值
1.2 无参无返回值
1 | public class HelloWorld { |
1.3 无参有返回值
1 | public class HelloWorld { |
注意
- 如果方法的返回类型为void,则方法中不能使用return
- 方法的返回值最多只有一个,不能返回多个值
- 方法返回值的类型必须要相同
1.4 有参无返回值
1 | public class HelloWorld { |
1.5 有参带返回值
1 | import java.util.Arrays; |
三、编程练习
定义一个包含整型数组参数的方法,用来接收成绩数组,进行成绩排序并输出前三名
1 | import java.util.Arrays; |
解析:首先定义好数组,创建hello对象,之后写相应的方法,最后在main函数中使用hello.scort(scorts)进行调用。