Java 字串替換問題疑難排解
使用 Java 字串時,請務必記住字串是不可變的。這意味著對字串所做的任何更改都會創建一個新的字串對象,而不是修改現有的字串對象。
考慮以下程式碼:
String delimiter = "\*\*"; String html = "<html><head></head><body>**USERNAME** AND **PASSWORD**</body></html>"; Map<String, String> mp = new HashMap<String, String>(); mp.put("USERNAME", "User A"); mp.put("PASSWORD", "B"); for (Entry<String, String> entry : mp.entrySet()) { html.replace(delimiter + entry.getKey()+ delimiter, entry.getValue()); }
您可能希望此程式碼取代「 HTML 字串中的「USERNAME」和「PASSWORD」佔位符以及地圖中的值。但是,這種情況不會發生,因為Replace()方法不會修改現有字串。 🎜>
透過這樣做,您'將建立一個包含替換內容的新字串並將其指派給html 引用。以上是為什麼我的 Java 字串替換方法不起作用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!