簡體   English   中英

如何在Java的StringBuilder中替換多個字符?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM