Java 문자열 교체 메서드 실패 [중복]
특정 Java 구현에서는 교체() 메서드가 문자열 내의 특정 문자열을 적절하게 바꾸지 못하는 것으로 보고되었습니다. 주어진 문자열. 이 예외는 String 객체의 불변성으로 인해 발생합니다.
문제 코드 분석:
제공된 코드 조각에서:
< pre>
문자열 구분 기호 = "";
String html = "
문제 설명:
Java의 replacement() 메소드는 원래 String 객체를 변경하지 않습니다. 대신 대체 항목이 적용된 새 문자열을 반환합니다. 이것이 논쟁의 핵심입니다. 원래 html 변수는 원래 문자열 값을 계속 유지합니다.
해결 방법:
이를 수정하려면 코드를 명시적으로 수정해야 합니다. replacement() 작업의 결과로 html 변수를 다시 할당합니다.
<br>html = html.replace(delimiterentry.getKey() delimiter,entry.getValue());<br>
결론:
replace()와 같은 메소드를 사용할 때는 String 객체의 불변성을 이해하는 것이 중요합니다. 반환된 String 객체를 원래 변수에 할당하면 의도한 대체가 적용됩니다.
위 내용은 내 Java 문자열 `replace()` 메소드가 작동하지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!