Java 数组 先赋值 与 后赋值 的细节
以用户需要产生的随机数输出最大最小值为例
先赋值代码
/*
需求
求出一个数组 byte[] 的最大值,并对应的下标
思路分析
1. 随机产生用户需要产生的个数
2. 将前一个数和下一个数做比较,将较大的数赋给 NumMax,较小的数赋给 NumMin,并输出最大最小值
*/
import java.util.Scanner;
public class ArrayExerciseTwo
{
// byte num = (byte) (Math.random() * 100 + 1);
public static void main(String[] args)
{
/*
byte NumMax = number[0], NumMin = number[0];
不可先赋值的原因:
初始化数组时,数组内的元素全为0,无论最大最小值
赋值后,最大值肯定会变,并且是正确是,但最小值永远为0
正确操作;先赋值后,在定义最大最小值,这样,值为赋值后的值,并表示系统默认的全为0
*/
Scanner mysScanner = new Scanner(System.in);
System.out.println("请输入需要产生的随机个数!");
byte num = mysScanner.nextByte();
byte[] number = new byte[num];
byte NumMax = number[0], NumMin = number[0];
/*
此处否值为 number[0] 有两点:
1. 在后面的 if 比较判断时,必须为 NumMax 与之对应的比较 如(NumMax < number[i + 1])
*/
for (byte i = 0;