繁体   English   中英

学校项目的 Java 抽签计划

[英]Java lottery program for School Project

我真的是 Java 新手,我不知道我是否已经做到了这一点,但我已经尝试过了。 该程序应该生成一行随机数,然后询问您是否想要一个新的。 我无法让它工作的部分是后者。 我已经尝试了很多东西,但我无法弄清楚。 (可能是我做错了一些超级简单的事情,但我找不到它)。

这是代码:

    package Lottorivit;

import java.util.Random;
import java.util.Set;
import java.util.TreeSet;
import java.util.Scanner;

/**
 * Simppeli lottorivi generaattori.
 */
public class Lottorivi {

    public static final int DEFAULT_NUM_TICKETS = 1;
    public static final int DEFAULT_MAX_VALUE = 49;
    public static final int DEFAULT_NUM_VALUES = 7;
    private Random random;

    public static void main(String[] args) {
        Scanner lukija = new Scanner(System.in);
        int numRivit = (args.length > 0) ? Integer.parseInt(args[0]) : DEFAULT_NUM_TICKETS;
        Lottorivi Lottorivi = new Lottorivi();
        for (int i = 0; i < numRivit; ++i) {
            System.out.println("Tässä on rivisi: " + Lottorivi.getNumbers(DEFAULT_NUM_VALUES, DEFAULT_MAX_VALUE));
            System.out.println("Haluatko uuden rivin? Vastaa KYLLÄ tai EI");
            String vastaus = lukija.nextLine();
            if (vastaus.equalsIgnoreCase("KYLLÄ")) {
                System.out.println("Tässä on uusi rivisi: " + Lottorivi.getNumbers(DEFAULT_NUM_VALUES, DEFAULT_MAX_VALUE));
            } else if (vastaus.equalsIgnoreCase("EI")) {
                System.out.println("Hyvää päivänjatkoa!");
            }
        }
    }

    public Lottorivi() {
        this(null);
    }

    public Lottorivi(Long seed) {
        this.random = (seed != null) ? new Random(seed) : new Random();
    }

    public Set<Integer> getNumbers(int numValues, int maxValue) {
        Set<Integer> numbers = new TreeSet<>();
        while (numbers.size() < numValues) {
            numbers.add(this.random.nextInt(maxValue) + 1);
        }
        return numbers;

    }

}

很抱歉它是芬兰语,但您应该了解它是如何工作的,因为它是一个如此简单的程序。 如果有更好的方法,您也可以随时推荐它们。 我很抱歉问了这么愚蠢的问题。 谢谢!

你是这个意思吗?

while (true) {
            System.out.println("Tässä on rivisi: " + Lottorivi.getNumbers(DEFAULT_NUM_VALUES, DEFAULT_MAX_VALUE));
            System.out.println("Haluatko uuden rivin? Vastaa KYLLÄ tai EI");
            String vastaus = lukija.nextLine();
            if (vastaus.equalsIgnoreCase("EI")) {
                System.out.println("Hyvää päivänjatkoa!");
                break;
            }
        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM