[英]How do I replace more than one char in StringBuilder in Java?
我有一些String,我想替換其中的一些字符。 一切都運行良好,直到String沒有兩個或多個相同的字符,該程序僅替換了第一個字符,而我無法更改第二個字符。
StringBuilder userTitleBuilder = new StringBuilder(conversedTitle);
while (score>1) {
userLetter = userInput.next().charAt(0);
if (movieTitle.contains(String.valueOf(userLetter))) {
charIndex = movieTitle.indexOf(userLetter);
userTitleBuilder.replace(charIndex,userTitleBuilder.length(), String.valueOf(userLetter));
System.out.println(userTitleBuilder);
} else {
--score;
System.out.println("Wrong\nTries left "+score);
}
}
這是這段代碼的解釋:從程序開始,用戶的分數等於10。userLetter只是一個字符,它將從用戶那里得到一些字母,然后如果語句檢查movieTitle變量的字符是否等於剛輸入的用戶,如果是,charIndex將具有它的位置(但它僅包含第一個索引,如果字上的字母相同,該怎么辦?)現在userTitleBuilder替換了具有movieTitle長度那么多“ _”的字符串中的字符,僅覆蓋標題。
* movieTitle和userTitleBuilder具有相同的值=“ CocaCola”我不想得到現成的解決方案。 我想要一些提示,如何替換字符串中多個相同的字符
可以使用稱為String.replace("old","new")
方法。 遵循此文檔 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.