gpt4 book ai didi

Java:多项选择游戏使用哪种结构

转载 作者:行者123 更新时间:2023-11-30 07:58:19 25 4
gpt4 key购买 nike

我正在尝试创建一个多项选择游戏,每个问题有 4 个可能的答案。
在游戏的主要部分,玩家将被问到一个问题并被提示输入答案。
在我的代码中,连同 questionanswer 字符串,我需要以某种方式判断哪个是正确答案,甚至可能标记问题以免在以后的回合中重复。此外,可能的答案需要在“演练”之间以随机/不同的顺序排列。

我试图弄清楚使用什么数据结构来存储以上所有内容,以便能够适本地编写代码。

我的第一选择是拥有一个主 Hashmap<String, HashMap>第二个HashMap<String, Boolean> * 存储在第一个中。第一个映射将问题字符串存储为键,第二个 HashMap(s) 作为值。第二个 HashMap 将答案存储为键和每个键的 boolean 值,指示哪个是正确答案,作为值。
有点复杂,但至少在理论上它似乎有效,尽管我仍然没有办法将问题标记为“已提出”。

我的第二个选择是一个二维数组,它的行代表一个问题,第 0 列是问题字符串,第 1、2、3、4 列存储答案 字符串,第 5 列存储正确答案字符串,并且可能有第 7 列 (6) 存储一个标志,标记该问题是否尚未被问过。
虽然理论上更简单,但我担心这种方法在实际编码时会非常困惑。

如果有更好/更简单的方法来做到这一点,请告诉我,甚至可以详细说明它们的好处。

最佳答案

Java 是一种面向对象的语言。你应该使用它。

示例:创建一个表示问题和可能答案的类。

public class Question {
private String question;
private String correctAnswer;
private List<String> answerList;
}

现在,您可以创建一个很好用的构造函数,首先给出问题,然后使用 varargs 给出所有答案。 ,首先是正确答案:

new Question("How satisfied are you with this answer?",
"Extremely satisfied",
"Very satisfied",
"Somewhat satisfied",
"Not so satisfied");

然后您的构造函数可以构建 answers列出并调用 Collections.shuffle(this.answers) 将它们随机化。

然后您将所有问题添加到 List<Question>并调用shuffle因此,问题将以随机顺序提出,而且只会提出一次。

关于Java:多项选择游戏使用哪种结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40559413/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com