Kotlin과 Java의 String은 무엇입니까?
코틀린에게는ByteArray, ShortArray, IntArray, CharArray, DoubleArray, FloatArray
(에 상당합니다).byte[], short[], int[],char[], double[], float[]
자바어.
이제 궁금한 게 있는데, 혹시...StringArray
Java와 동등한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 어레이를 작성하는 일반적인 방법 중 몇 가지는 다음과 같습니다.
- var ar = 어레이(5){"}
그러면 초기값이 빈 문자열인 5개의 문자열 배열이 생성됩니다.
- var arr = arrayOfNulls
<String?>
(5)
그러면 초기값이 null인 크기 5의 배열이 생성됩니다.문자열 데이터를 사용하여 어레이를 수정할 수 있습니다.
- var ar = arrayOf("0", "1", "2", "3")
어레이의 내용을 이미 알고 있으면 어레이를 직접 초기화할 수 있습니다.
문자열의 다차원 배열을 만드는 간단한 방법도 있습니다.
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
'programing' 카테고리의 다른 글
Java에서 2 * (i * i)가 2 * i * i보다 빠른 이유는 무엇입니까? (0) | 2022.08.21 |
---|---|
vue2-dataerange-picker 드롭다운에서 연도 선택 (0) | 2022.08.21 |
Vue 슬롯이 드물고 예측할 수 없는 경우(잠재적인 vue 버그)에서 작동하지 않습니다. (0) | 2022.08.21 |
C void 인수 "void foo(void)"를 사용하는 것이 좋습니까, 아니면 "void foo()"를 사용하지 않는 것이 좋습니까? (0) | 2022.08.21 |
Nuxt.js의 주입된 플러그인에서 주입된 다른 메서드에 액세스합니다. (0) | 2022.08.21 |