public void reveal(char c) {
for(int i = 0; i < sizeReset; i++) {
if(wordCompare.charAt(i) == c) revealed.set(i);
if(revealed.cardinality() == 0) {
eo.add(String.valueOf('*'));
}
else {
if(revealed.get(i) == true) {
eo.add(String.valueOf(wordCompare.charAt(i)));
}
else {
eo.add(String.valueOf('*'));
}
}
}
System.out.println(eo.toString());
jTextPane1.setText(eo.toString().replace("[", "").replace("]", "").replace(",", ""));
}
注追加數組列表中的字符。在特定位置
字符c - 表示字母被用戶
透露進入 - 是一個聲明爲BitSet中
INT sizeReset - 是字的大小來猜測
假設ArrayList的EO = new ArrayList();在方法外聲明。 (全球)
=========================================== ==
這是我到目前爲止。假設我會猜測「香蕉」。用戶輸入的字母將被顯示,其餘的將被標記爲「*」。
===========================================
問題:它將包含「」的整個值附加到arrayList中存儲值的末尾,而不是我希望它們的特定位置(也包括「」)。只有用戶輸入的字母)。 * HANGMAN GAME的邏輯。
示例:
首字母輸入: 「A」
OUTPUT:
_a_a_a
進入第二個字母 「N」
OUTPUT:
_ _n_n_
(這是錯誤的)
正確的輸出應該是:
_anana
======================= ========================
我是新來的字符串操作,我遇到了這個部分的麻煩。我已經閱讀了一些關於StringBuilder的內容,但我還沒有弄明白。如果你能幫助我,那將非常棒。提前致謝。 :)
這正是我正在尋找的。非常感謝,但是有沒有辦法保存這些空白空間?這是我的程序缺乏的唯一的東西。 –
可以通過編輯有關空格的小修改代碼,讓您省去一點時間嗎?以便我可以將此標記爲正確的答案。即使沒有小的修改,它也是BTW,但如果你可以添加它,那將是非常好的。我對字符串操作非常陌生,我無法完全理解您提供的代碼。我仍然在理解它。這也是爲了也遇到同樣問題的其他人的利益。再一次,在此先感謝:) –