[英]Java elementary code snippet
我是Java的新手,如果有人可以看一下這段代碼片段並給我幫助,將不勝感激。
@SuppressWarnings("unused")
public static void main(String[] args) throws IOException {
File fin = new File("wordList");
FileInputStream fis = new FileInputStream(fin);
BufferedReader br = new BufferedReader(new nputStreamReader(fis));
List<String> wordList = new ArrayList<>();
List<Character> guessedCharacters = new ArrayList<>();
char guessedCharacter;
String line = "";
while ((line = br.readLine()) != null) {
wordList.add(line);
}
br.close();
System.out.println("Welcome to hanged man.");
System.out.println();
for (int i = 0; i < wordList.size(); i++) {
System.out.print("Guess a letter: ");
guessedCharacter = (char) System.in.read();
System.out.println('\n');
}
當我運行上面的代碼片段時,得到以下輸出:
歡迎來到絞死的男人。
猜一封信:d
猜一封信:
猜一封信:
我的意圖是讓提示“猜字母”僅在輸入第一個字母后出現一次。
如果我用大於3的任何整數替換for循環中的“ wordList.size()”,我將得到相同的結果。
我希望能聽到別人的消息。 先感謝您。 馬可斯
您正在尋找的是使用Scanner
類(可能不是,因為您的練習看起來很瑣碎,並且您可能只是想以最簡單的方式來讀取沒有任何GUI的鍵盤輸入),或者很可能是這樣的:
String answer = System.console().readLine("Guess a letter : ");
不要使用System.read()來讀取擊鍵(或者除非您想“為了娛樂而使事情復雜化” :)
使用System.read.in()可以讀取'd'和'\\ n'值。 嘗試使用Scanner類(請參閱此處 )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.