我試圖在特定位置替換字符串中的字母。我知道有很多這樣的問題,但我仍然陷入困境。例如:(java)在遊戲循環中替換字符串中的一個特定字符的所有實例
例如:hiddenWord =「----」 從我的循環中我發現在位置1和3我想用「a」替換「 - 」。所以那hiddenWord now =「-a-a」。
主要剪斷:
btnA = new JButton("A");
btnA.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
count += 1;
lblTries.setText(count + " Tries");
int i;
String newName="";
if (wordList[num].indexOf('a') > 0){
System.out.print("Has A: ");
for (i = -1; (i = wordList[num].indexOf("a", i + 1)) != -1;) {
//System.out.print(i + " ,");
newName = hiddenWord.substring(0,i)+'a'+hiddenWord.substring(5);
}
}
System.out.println(newName);
}
});
請讓我知道,如果有任何其他的約定,我應該做的differently..as你能告訴我是很新的這一點。
編輯:
someone_somewhere幫助我看到了我的錯誤。我的新代碼看起來其次
if (wordList[num].indexOf('a') >= 0){
for (int i = -1; (i = wordList[num].indexOf("a", i + 1)) != -1;) {
hiddenWord = putCharAtPlaces(hiddenWord,'a',new int[]{i});
lblWordDisplay.setText(hiddenWord);
System.out.println(i);
}
的可能的複製(http://stackoverflow.com/questions/6952363/replace- a-character-at-a-specific-index-in-a-string) – Tom