我有兩個方法,getOption()
和driver()
循環就不會結束。開關,而當告訴
getOption()
帶String從掃描儀,打破它爲單個單詞,並返回字符串的數組。
driver()
然後獲取該數組的第一個值getOption()[0],並基於該第一個String開始一個while循環。雖然字符串不等於「退出」,請檢查該值是否與任何開關情況匹配。但是,當我運行它時,它可以執行任何切換情況,但quit語句從不起作用。任何人都可以幫我一把嗎?
public String[] getOption(){
String optionLine[];
Scanner input = new Scanner(System.in);
System.out.println("Input string\n");
String line = input.nextLine();
optionLine = line.split(" ");
return optionLine;
}
public void driver(){
String option = getOption()[0];
Stats s = new Stats(data);
while (!"quit".equals(option)){
switch (option) {
case "add": //data.put(getOption()[1], getValues());
System.out.println("add");
break;
case "set": System.out.println("set");
break;
case "print": System.out.println(Arrays.toString(data));
break;
case "sum": System.out.println(s.sum());
break;
case "mean": System.out.println(s.mean());
break;
case "stdev": System.out.println(s.standardDeviation());
break;
case "median": System.out.println(s.median());
break;
case "primes": System.out.println(s.primes());
break;
case "summary": System.out.println("summary");
break;
//case "test": System.out.println(Arrays.toString(getValues()));
}
driver();
}
}
我很缺乏經驗,這是一項任務。你建議我做什麼呢?我很抱歉如此失落:( – Qdhcjv
在結束的時候再次移除對driver()的調用,而是再次讀取option = getOption()[0];並且s = new Stats(data); –