【发布时间】:2017-11-30 23:11:50
【问题描述】:
我创建了两个 .java 文件,一个名为 Ques.java,另一个名为 TBRPGgame.java。这里分别是Ques.java和TBRPGgame.java的内容:
import java.util.Scanner;
class Ques
{
Scanner numin = new Scanner(System.in);
String quesText = "";
String quesAtr1 = "";
String quesAtr2 = "";
String quesAtr3 = "";
String quesAtr4 = "";
boolean done = false;
Ques(String qText, String qAtr1, String qAtr2, String qAtr3, String qAtr4)
{
quesText = qText;
quesAtr1 = qAtr1;
quesAtr2 = qAtr2;
quesAtr3 = qAtr3;
quesAtr4 = qAtr4;
}
String ask()
{
System.out.println(quesText);
if (numin.nextInt() == 1)
{
System.out.println(quesAtr1); return quesAtr1;
} else if (numin.nextInt() == 2)
{
System.out.println(quesAtr2); return quesAtr2;
} else if (numin.nextInt() == 3)
{
System.out.println(quesAtr3); return quesAtr3;
} else if (numin.nextInt() == 4)
{
System.out.println(quesAtr4); return quesAtr4;
} else
{
System.out.println("That is not a valid input. Possible inputs are: 1, 2, 3, 4."); System.out.println(""); return "";
}
}
}
和
import java.util.Scanner;
class TBRPGgame
{
public static void main(String[] args)
{
Ques question1 = new Ques("\n\nOne day, while you were travelling, you visited a city. However, you had only enough time to visit one building before you had to leave the city.\n\nWhich building did you visit?\n1.) I visited the library.\n2.) I visited the tavern.\n3.) I visited the blacksmith.\n4.) I visited the temple.", "kno", "rhe", "str", "fai");
question1.ask();
}
}
但是,当 Ques 对象的 ask 方法被执行时,包含在 5 个可能结果中的 System.out.println 代码(输入为 1、2、3、4 或其他)似乎没有正在打印。
【问题讨论】:
-
您知道每次调用
nextInt()时,用户必须输入一个新值,对吧? -
Questext 必须声明为 public static 才能正确声明。
-
@Andreas Ah.. 我不知道。谢谢。
标签: java class methods printing