String _p = p;
for(int i = 0; i <= _p.length()-1; i++)
_p = _p.replace(lChar[_p.charAt(i)].getText(), tReplace[_p.charAt(i)].getText());
tOut.append(_p);
以上是我使用,以取代我一個TextArea的讀出的字符串的代碼(錫 - > P),然後有一個標籤陣列(lChar)其中,I存儲每一個唯一的字符(char值是數組索引),我也有一個TextField數組(tReplace),我在這裏爲lChar中的每個字符寫入替換字符串(可以是多個字符) char是數組索引)。JAVA替換字符串而不更換很多次
所以現在我想用tReplace中的每個字符替換lChar中的每個字符。如果我想用'2'替換字符'12'的'2'和'2',我得到'11',因爲在第一個循環中它將它改變爲'22'並且在下一個循環中它將其更改爲「11」。但我只想改變每個字母一次,好像我會寫
String.valueOf(21).replace("2","1").replace("1","2");
任何想法如何做到這一點?
非常感謝你! – paul 2011-04-17 13:45:14