提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
两个数组动态初始化的案例
1、
键盘录入5个学生成绩,找出最高分和最低分
2、产生10个1~100的随机数,并找出最小值
完整代码
1.需求:键盘录入5个学生成绩,找出最高分和最低分
代码如下:
import java.util.Random;
import java.util.Scanner;
//需求:键盘录入5个学生成绩,找出最高分和最低分
public class ArrayTest_dong {
public static void main(String[] args) {
ArrayDongPlay();
}
public static void ArrayDongPlay() {
Scanner sc = new Scanner(System.in);
System.out.println("请输入班级人数:");
int count = sc.nextInt();//定义count,接收用户输入的数字
int[] arr = new int[count];//利用count来动态定义数组arr
for (int i = 0; i < arr.length; i++) {//遍历数组
System.out.println("请输入第" + (i + 1) + "个学生成绩");
arr[i] = sc.nextInt();//为数组每一个元素进行赋值
}
int max = getMax(arr);//调用getmax方法求最大值
System.out.println("最高分:" + max);
int min = getMin(arr);//调用getmax方法求最大值
System.out.println("最低分:" + min);
}
public static int getMax(int[] arr) {//找出一个数组的最大值
int max = arr[0];
for (int i = 0; i < arr.length; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
return max;
}
public static int getMin(int[] arr) {//找出一个数组的最小值
int min = arr[0];
for (int i = 0; i < arr.length; i++) {
if (arr[i] < min) {
min = arr[i];
}
}
return min;
}
}
运行结果:
请输入班级人数:
5
请输入第1个学生成绩
100
请输入第2个学生成绩
25
请输入第3个学生成绩
60
请输入第4个学生成绩
75
请输入第5个学生成绩
65
最高分:100
最低分:25
2.需求产生10个1~100的随机数,并找出最小值
代码如下:
import java.util.Random;
import java.util.Scanner;
//需求:
public class ArrayTest_dong {
public static void main(String[] args) {
ArrayDongRandom();
}
public static void ArrayDongRandom() {//产生10个1~100的随机数,并找出最小值
Random r = new Random();
Scanner sc = new Scanner(System.in);
System.out.println("输入产生随机数数量:");
int count = sc.nextInt();//定义count,接收用户输入的数字
int[] arr = new int[count];//利用count来确定动态定义数组arr的长度
for (int i = 0; i < arr.length; i++) {//遍历数组
arr[i] = r.nextInt(100) + 1;//通过random得到1~100的一个随机数赋予数组元素
System.out.print(arr[i] + " ");
}
System.out.println();
System.out.println("最小值为:" + getMin(arr));//调用getmin方法求最小值
}
public static int getMax(int[] arr) {//找出一个数组的最大值
int max = arr[0];
for (int i = 0; i < arr.length; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
return max;
}
public static int getMin(int[] arr) {//找出一个数组的最小值
int min = arr[0];
for (int i = 0; i < arr.length; i++) {
if (arr[i] < min) {
min = arr[i];
}
}
return min;
}
}
运行结果:
输入产生随机数数量:
10
45 30 78 38 90 25 5 7 87 94
最小值为:5
总结
今天学习了动态数组的初始化,并结合了random随机数进行数组的遍历和赋值,实现了数组的动态化的简单使用