【发布时间】:2015-06-29 17:57:24
【问题描述】:
我现在正在学习 Java 课程,我们应该制作一个基于文本的游戏。我们游戏中的选项之一是允许玩家在 3 种船型之间进行选择;小,中,大。根据他们的选择,他们将能够选择有多少人在船上旅行。小号最多允许 3 个,中号最多 6 个,大号最多 9 个。一旦他们做出了这个选择,他们就可以为每个船员输入一个名字并选择一个研究专业。以前,我们将这些设置为单独的菜单(选择舰艇、船员人数、研究规格和名称),但我开始认为在同一个菜单中选择船员人数、名称和研究规格会更容易。
也就是说,我们现在正在处理数组/ArrayLists,我们应该使用数组来列出游戏中的角色 (NPC)。所以,我需要弄清楚如何根据选择的船员人数(1 到 9 人)创建一个数组,让它提示输入名称,然后让他们从研究规范列表中进行选择。他们将输入一个字母供他们选择,但数组应将研究规范的全名放入其中。我在另一篇文章中发现了一些代码,我认为在这种情况下可能会有所帮助,但我认为它几乎没有触及表面。任何帮助将不胜感激。
public class Name {
public static void main(String[] args) {
ArrayList<String> name = new ArrayList<String>();
ArrayList<(how do I tell it to select a character option here?)> researchSpec = new ArrayList<(selected option)>();
Scanner sc = new Scanner(System.in);
while (true) {
System.err.println("Please enter the name of your crew member: ");
name.add(sc.next());
System.out.println("Please select a Science Specialization for your crew member");
researchSpec.add(sc.next());
}
}
}
【问题讨论】:
-
您的船员是否被定义为他们自己的班级?如果你只是存储他们的名字。然后,您的两个 ArrayList 都将使用 String 作为它们的泛型类型。您可能想要做的是控制您的循环以允许它迭代并仅根据需要多次提示您。 ArrayList 没有最大大小的概念。所以你需要告诉你的程序什么时候停止添加新的工作人员。
-
机组成员在他们自己的类(字符)中定义。该类存储他们的健康、描述、坐标、名称和研究规范。问题我正在弄清楚如何将角色的名称和研究规格(游戏开始后添加的信息)与其余信息一起放在角色文件中。至于控制一定数量的字符的循环,如果机组人员的数量可以根据用户输入进行更改,我不完全确定如何做到这一点。