HOWTO · Kotlin
Kotlin의 Java String[]과 동일
이 기사에서는 Kotlin의 Java String[]에 해당하는 기능을 소개합니다. Java에서 String[]을 통해 달성한 것과 동일한 결과를 Kotlin에서 달성할 수 있는 모든 가능한 방법을 살펴보겠습니다.
이 페이지의 내용
Kotlin에는 Java의 기본 데이터 유형 배열과 동일한 배열이 있습니다. 예를 들어 다음과 같습니다.
ByteArray=byte[]ShortArray=short[]IntArray=int[]CharArray=char[]DoubleArray=double[]FloatArray=float[]
그러나 Kotlin은 Java의 String[]에 대해 동일하지 않습니다. 따라서 Kotlin에는 StringArray[]와 같은 것이 없습니다.
하지만 문자열 데이터 유형의 빈 배열을 만들고 싶다면 어떻게 해야 할까요? Kotlin에서는 어떻게 할까요?
이 기사에서 이러한 질문에 대한 답을 배울 것입니다. 그러나 그 전에 Kotlin에 StringArray[]가 없는 이유를 이해해 봅시다.
Kotlin에서 StringArray[]가 없는 이유
문자열이 JVM의 기본 데이터 유형이 아니기 때문에 Kotlin에는 StringArray[]가 없습니다. 반대로 ByteArray[], ShortArray, IntArray[] 등과 같은 배열 메서드가 있는 다른 유형은 원시적입니다.
기본 유형은 객체로 박싱한 후 저장됩니다. IntArray[] 등과 같은 특수 Kotlin 배열은 이러한 기본 데이터 유형을 개봉하고 보관합니다.
그러나 문자열은 기본 유형이 아니므로 특수 배열이 필요하지 않습니다. 따라서 Kotlin에는 StringArray[]가 없습니다.
Kotlin 문자열 배열 만들기와 동일한 Java String[]
다른 방법을 사용하여 Kotlin에서 여전히 문자열 배열을 만들 수 있습니다. 이러한 모든 방법은 Kotlin에서 Java String[]에 해당한다고 할 수 있습니다.
다음은 Kotlin에서 빈 문자열 배열을 만드는 다양한 방법입니다.
arrayOf<String>을 사용하여 Kotlin에서 빈 배열 만들기
fun main(args: Array<String>) {
var myStringArray = arrayOf<String>()
}
arrayOf를 사용하여 Kotlin에서 빈 배열 만들기
fun main(args: Array<String>) {
var myStringArray = arrayOf("", "", "")
}
Array<String?>을 사용하여 Kotlin에서 빈 배열 만들기
fun main(args: Array<String>) {
var myStringArray = Array<String?>(5) { null }
}
Array<String>을 사용하여 Kotlin에서 빈 배열 만들기
fun main(args: Array<String>) {
var myStringArray = Array<String>(5) { "it = $it" }
}
arrayOfNulls<String>을 사용하여 Kotlin에서 빈 배열 만들기
fun main(args: Array<String>) {
var myStringArray = arrayOfNulls<String>(5)
}
빈 배열 외에도 동일한 구문을 사용하여 초기화된 배열을 만들 수도 있습니다. 초기화된 배열을 생성하는 동안 작동하지 않는 유일한 방법은 arrayOfNulls<String>입니다.
arrayOf<String>을 사용하여 Kotlin에서 빈 배열 만들기
다음은 arrayOf<String>을 사용하여 초기화된 배열을 만드는 예입니다.
fun main(args: Array<String>) {
var myStringArray = arrayOf<String>("Hello", "Welcome", "to", "Kotlin", "Tutorials")
myStringArray.forEach {
println(it)
}
}
출력:
마찬가지로 arrayOf, Array<String?> 및 Array<String>을 사용하여 초기화된 Kotlin 문자열 배열을 만들 수 있습니다.