programing

Kotlin과 Java의 String은 무엇입니까?

newsource 2022. 8. 21. 19:44

Kotlin과 Java의 String은 무엇입니까?

코틀린에게는ByteArray, ShortArray, IntArray, CharArray, DoubleArray, FloatArray(에 상당합니다).byte[], short[], int[],char[], double[], float[]자바어.

이제 궁금한 게 있는데, 혹시...StringArrayJava와 동등한String[]?

특별한 경우는 없다String,왜냐면String는 Java 프리미티브(,,int ...)와 대조적으로 JVM 상의 일반적인 참조 유형입니다. 참조에 저장하는 경우에는 및 같은 오브젝트로 분류해야 합니다.Kotlin과 같은 특수 어레이의 목적은 박스화되지 않은 프리미티브를 저장하여 박스화 및 언박싱 오버헤드를 제거하는 것입니다(Java와 동일).int[]대신Integer[]).

사용할 수 있습니다.Array<String>(그리고Array<String?>nullables의 경우)는 다음과 같습니다.String[]자바어:

val stringsOrNulls = arrayOfNulls<String>(10) // returns Array<String?>
val someStrings = Array<String>(5) { "it = $it" }
val otherStrings = arrayOf("a", "b", "c")

다음 항목도 참조하십시오.언어 레퍼런스 배열

arrayOf, arrayOfNulls, emptyArray 사용

var colors_1: Array<String> = arrayOf("green", "red", "blue")
var colors_2: Array<String?> = arrayOfNulls(3)
var colors_3: Array<String> = emptyArray()

Kotlin에서 빈 문자열 배열을 작성하려면 다음 6가지 방법 중 하나를 사용해야 합니다.

첫 번째 접근법:

val empty = arrayOf<String>()

두 번째 접근법:

val empty = arrayOf("","","")

세 번째 접근법:

val empty = Array<String?>(3) { null }

네 번째 접근법:

val empty = arrayOfNulls<String>(3)

다섯 번째 접근법:

val empty = Array<String>(3) { "it = $it" }

여섯 번째 접근법:

val empty = Array<String>(0, { _ -> "" })

이러한 유형은 상자형 유형이 아닌 기본 요소의 배열을 생성할 수 있도록 하기 위해 있습니다.String은 Java에서는 프리미티브가 아니기 때문에 사용하시면 됩니다.Array<String>자바어로서 코틀린어로String[].

위해서Strings그 외의 타입은,Array<*>.이유IntArray오토박싱을 방지하기 위한 것도 있습니다.

그렇게int[]에 관계하다IntArray어디에Integer[]에 관계하다Array<Int>.

String 어레이를 작성하는 일반적인 방법 중 몇 가지는 다음과 같습니다.

  1. var ar = 어레이(5){"}

그러면 초기값이 빈 문자열인 5개의 문자열 배열이 생성됩니다.

  1. var arr = arrayOfNulls<String?>(5)

그러면 초기값이 null인 크기 5의 배열이 생성됩니다.문자열 데이터를 사용하여 어레이를 수정할 수 있습니다.

  1. var ar = arrayOf("0", "1", "2", "3")

어레이의 내용을 이미 알고 있으면 어레이를 직접 초기화할 수 있습니다.

  1. 문자열의 다차원 배열을 만드는 간단한 방법도 있습니다.

    var matrix = 어레이(5) {Array(6) {""}

    이렇게 하면 빈 문자열의 초기 값을 사용하여 행이 5개이고 열이 6개인 행렬을 만들 수 있습니다.

사용할 수도 있습니다.

val frases = arrayOf("texto01","texto02 ","anotherText","and ")

예를들면.

이 예는 Android에서 완벽하게 작동합니다.

코틀린에서는 람다 표현을 쓸 수 있습니다.Kotlin 어레이 컨스트럭터의 정의는 다음과 같습니다.

Array(size: Int, init: (Int) -> T)

평가 대상:

skillsSummaryDetailLinesArray = Array(linesLen) {
        i: Int -> skillsSummaryDetailLines!!.getString(i)
}

또는 다음 중 하나를 선택합니다.

skillsSummaryDetailLinesArray = Array<String>(linesLen) {
        i: Int -> skillsSummaryDetailLines!!.getString(i)
}

이 예에서 필드 정의는 다음과 같습니다.

private var skillsSummaryDetailLinesArray: Array<String>? = null

도움이 되었으면 좋겠다

언급URL : https://stackoverflow.com/questions/44239869/whats-the-kotlin-equivalent-of-javas-string