Concat()은 원래 값을 수정하지 않습니다. 새 값을 반환합니다. 이 같은
:Java의 일부 메소드가 원래 값을 수정하는 이유는 무엇입니까?
String str = "good";
str.concat("ness");
System.out.println(str); //"good"
그러나 일부 방법은 원래의 값을 수정합니다. 왜? 그루비에서
:
def languages = ["Java", "Groovy", "JRuby"]
languages.reverse()
===> [JRuby, Groovy, Java]
println languages
===> [Java, Groovy, JRuby]
languages.sort()
===> [Groovy, JRuby, Java]
println languages
===> [Groovy, JRuby, Java]
예제는 잘 선택되지 않았습니다. 입력 문자열을 수정하는 방법은 어디입니까? 여러분이 말하는 것처럼, collect는 입력을 수정하지 않지만 println은 입력을 수정하지 않습니다. – Frank
편집 후 : Groovy 예제가 요점을 설명합니다. 나는 이제 그 문제를 이해한다. – Frank