与计算机的情话--Java-(9)

128 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第9天,点击查看活动详情

1、前言

生命就是一杯清茶,就是一支歌谣,就是一首耐人寻味的小诗!让我们一路行走,一路品味,一路经历,静静享受这美丽的人生!

今天立秋,不但没有感觉到凉快还更热了,现在的全球变暖是越来越严重了,突然喜欢冬天了,你们喜欢哪个季节呢?明天又是新的一周,加油,程序员们。

2、正文

今天来写点数组案例,让我们能更深的记住它,知道它的用处。

首先我们来了解一下数组怎么求最值,元素少的时候我们可以一眼看出来,元素多的时候咋整。

我们应该怎么解决,首先我们应该定义一个变量记录最大值,这个变量建议默认存储第一个元素值作为参照。

int max = faceScores[0]

第二步就是遍历数组的元素,如果该元素大于变量存储的元素,则替换变量存储的值为该元素。

for (int i = 1; i < faceScores.length; i++) {
    if(faceScores[i] > max) {
        max = faceScores[i];
        } 
    }
    //然后输出最大值变量存储的数据即可
    System.out.println("数组的最大值是: " + max);

我们需要开发一个幸运小游戏,规则是:游戏后台随机生成1-20之间的5个数(无所谓是否重复),然后让大家来猜。

未猜中提示:"为猜中",并继续猜测

猜中提示:"恭喜你,猜中了",并输出该数据第一次出现的位置,且输出全部5个数据,最终结束本游戏。

分析:我们是不是得先生成5个数据,用数组存储起来。

int[] data = new int[5];
Random r = new Random();
for (int i = 0; i < data.length; i++) {
    data[i] = r.nextInt(20) + 1;
}

然后定义一个死循环,输入数据猜测,遍历数组,判断数据是否在数组中,如果在进行对应提示并结束死循环;如果没有猜中,提示继续猜测知道猜中为止。

Scanner sc = new Scanner(System.in);
OUT:
while (true) {
    System.out.println("请输入一个1-20之间的整数进行猜测:");
    int guessData = sc.nextInt();
    for (int i = 0; i < data.length; i++){
        if(data[i] == guessData){
            System.out.println("恭喜你,猜中了,你猜中的数据索引是:" + i);
            //结束死循环,代表游戏结束。
            break OUT;
            }
        }
        System.out.println("当前猜测的数据在数组中不存在,请重新猜测");
}
//输出数组的全部元素,让用户看到自己确实是猜中了某个数据。
for (int i = 0; i < data.length; i++){
    System.out.println(data[i] + "\t");
}

今天是我参加更文挑战的第9天,敬请期待下文。