반응형
groovy에서 작은 따옴표 또는 큰 따옴표 내의 문자열의 차이점은 무엇입니까?
def a = "a string"
def b = 'another'
차이가 있습니까? 아니면 그냥 자바 스크립트처럼의 입력 수 있도록 '
하고 "
문자열에서 쉽게?
작은 따옴표는 표준 Java 문자열입니다.
큰 따옴표는 템플릿 가능한 문자열로, 템플릿 화 된 경우 GString을 반환하거나 표준 자바 문자열을 반환합니다. 예를 들면 :
println 'hi'.class.name // prints java.lang.String
println "hi".class.name // prints java.lang.String
def a = 'Freewind'
println "hi $a" // prints "hi Freewind"
println "hi $a".class.name // prints org.codehaus.groovy.runtime.GStringImpl
작은 따옴표로 묶인 문자열로 템플릿을 작성하면 아무 작업도 수행되지 않습니다.
println 'hi $a' // prints "hi $a"
또한 julkiewicz가 답변에 제공 한 링크 는 읽을만한 가치가 있습니다 (특히 GStrings에 관한 부분은 약 2/3 정도의 Strings가 아닙니다.
내 이해는 큰 따옴표로 묶인 문자열에 변수 및 기타 표현식에 대한 참조가 포함될 수 있다는 것입니다. 예 : "Hello $name"
, "Hello ${some-expression-here}"
. 이 경우 a GString
는 일반 대신 인스턴스화됩니다 String
. 반면에 작은 따옴표로 묶인 문자열은이 구문을 지원하지 않으며 항상 일반 String
. 여기에서 주제에 대해 자세히 알아보십시오.
http://docs.groovy-lang.org/latest/html/documentation/index.html#all-strings
반응형
'program story' 카테고리의 다른 글
C ++ 함수 매개 변수의 평가 순서 (0) | 2020.10.10 |
---|---|
수은 병합을 중단하는 방법은 무엇입니까? (0) | 2020.10.10 |
남쪽 마이그레이션이 작동하지 않는 이유는 무엇입니까? (0) | 2020.10.09 |
const char * 및 char const *-동일합니까? (0) | 2020.10.09 |
javascript는 html 입력에서 "disabled"속성을 제거합니다. (0) | 2020.10.09 |