該程序將從telephones.txt文件中讀取每個電話號碼,並檢查它是否可以翻譯成一個或多個words.txt文件。該程序的輸出將包含電話號碼和他們的單詞代表。 (假設有話和電話的文件中)while循環不重複
public static void main(String[] args) throws IOException
{
Scanner phones = new Scanner(new File("phones.txt"));
Scanner words = new Scanner(new File("words.txt"));
PrintWriter outfile = new PrintWriter(new FileWriter("outfile.txt"));
String number = "", output = "", code = "" ;
//Scans for next phone string
while(phones.hasNext())
{
number = phones.next();
number = number.replace("-","");
//Scans for next word string
while(words.hasNext())
{
code = words.next();
char[] wordChars = null;
wordChars = code.toCharArray();
output = "";
//converts word to digits
for(char wordChar : wordChars)
{
output = output.concat(new String(convert(wordChar)));
}
if(number.equals(output));
{
System.out.println(number + " " + code);
}
break;
}
}
}
這是我迄今所做的,只是我想不通的東西
if(number.equals(output));
{
System.out.println(number + " " + code);
}
對於此行我試着去看看輸出具有與數字相同的值,如果它具有相同的值,我想將其打印出來,但這是我的程序中發生的情況。
我想跟蹤我的程序,這是我認爲正在發生的事情,但它不是...
進入第一while循環,而那裏有一個手機串繼續
集數到下一個手機串
進入第二個while循環,而那裏有一個字串繼續
設置代碼到當前單詞串並轉換成一個數字值(假設轉換是正確的)
如果轉換的字符串不等於數字,我想繼續循環並搜索下一個單詞。如果是我想顯示數字+代碼並繼續搜索更多的單詞。
後,我通過搜索詞我想繼續到下一個號碼並重復該號碼詞搜索,直到第一個清單while循環沒有更多的數字
謝謝你解決了它爲什麼總是停滯的問題 – Shimy
我想upvote,但因爲im新的它很難對upvote沒有15 rep:s你知道怎麼行if(number.equals(output)); System.out.println(number +「」+ code); } 是不打印它假設? – Shimy
@ user3034912這是一個不同的問題,您應該將它發佈到新線程中,並解釋它正在打印的內容以及您期望的內容。 – amit