[arrays] Kotlin에서 빈 배열을 만드는 방법은 무엇입니까?
Array(0, {i -> ""})
현재 사용 하고 있으며 다음과 같은 더 나은 구현이 있는지 알고 싶습니다.Array()
또한을 사용 arrayOfNulls<String>(0) as Array<String>
하는 경우 컴파일러는이 캐스트가 결코 성공할 수 없음을 경고합니다. 그러나 내부의 기본 구현 Array(0, {i -> ""})
입니다. 내가 뭔가를 놓친 건가요?
답변
늦게 (2015 년 6 월) Kotlin 표준 라이브러리 기능이 있습니다.
public fun <T> arrayOf(vararg t: T): Array<T>
따라서 빈 문자열 배열을 만들려면 다음과 같이 작성할 수 있습니다.
val emptyStringArray = arrayOf<String>()
답변
답변
비어 있거나 null
? 그게 질문입니다!
의 배열을 만들려면 null
간단히 arrayOfNulls<Type>(length)
.
그러나 size 의 빈 배열 을 생성 length
하려면 다음을 사용하십시오.
val arr = Array(length) { emptyObject }
참고 사항은 각 데이터 유형별 로 적절하게 정의 해야 한다는 것입니다emptyObject
(원하지 않기 때문에 null
). 예. 대한 String
의, emptyObject
수 있습니다 ""
. 그래서:
val arr = Array(3) { "" } // is equivalent for: arrayOf("","","")
다음 은 실제 예 입니다. 프로그램은 기본적으로 두 개의 샘플 인수로 실행됩니다.
답변
널 배열
var arrayString=Array<String?>(5){null}
var nullArray= arrayOfNulls<String>(5)
답변
사용하다:
@JvmField val EMPTY_STRING_ARRAY = arrayOfNulls<String>(0)
null 값으로 초기화 된 0 크기의 문자열 배열을 반환합니다.
1. 틀 렸습니다 :
@JvmField val EMPTY_STRING_ARRAY = emptyArray<String>()
그것은 반환 arrayOfNulls<String>(0)
2. 틀 렸습니다 :
@JvmField val EMPTY_STRING_ARRAY = arrayOf<String>()
문자열을 포함하는 배열을 반환합니다.
답변
위에서 언급했듯이 IntArray(size)
또는 FloatArray(size)
.
답변
빈 배열을 만드는 두 가지 방법, 람다없이 두 번째 방법을 찾았습니다.
var arr = Array (0, { i -> "" })
var arr2 = array<String>()
Kotlin의 null 문자열에 대해서는 허용되지 않습니다. String 을 사용해야 합니까? 문자열이 널이되도록 허용하는 유형입니다.