Kotlin Array
을 varargs Java 로 어떻게 변환 할 수 String[]
있습니까?
val angularRoutings =
arrayOf<String>("/language", "/home")
// this doesn't work
web.ignoring().antMatchers(angularRoutings)
Kotlin Array
을 varargs Java 로 어떻게 변환 할 수 String[]
있습니까?
val angularRoutings =
arrayOf<String>("/language", "/home")
// this doesn't work
web.ignoring().antMatchers(angularRoutings)
답변:
다음과 같은 스프레드 연산자 를 사용해야합니다. 스프레드 연산자*
는 배열 인수 앞에 배치되어야합니다.
antMatchers(*angularRoutings)
자세한 내용은 설명서를 참조하십시오 .
vararg
-함수 를 호출 할 때 인수를 하나씩 전달할 수 있습니다 (예 :)asList(1, 2, 3)
또는 이미 배열이 있고 그 내용을 함수에 전달하려는 경우 스프레드 연산자를 사용합니다 (배열 앞에를 붙임*
).
스프레드 연산자는 배열에 대해서만 정의되며 목록에서 직접 사용할 수 없습니다. 목록을 다룰 때 eg toTypedArray()
를 사용 하여 배열로 변환하십시오.
*list.toTypedArray()
vararg
는 개별 요소를 예상하며 *array
"이 배열을 해당 목적을위한 개별 요소로 처리"하는 Kotlin 방식입니다. vararg
-function 내에서 vararg
매개 변수는 어쨌든 배열이됩니다. 개별 요소를 배열로 변환하려면을 사용할 수 arrayOf(...)
있지만이 경우에는 필요하지 않습니다.
vararg
있습니까?