Как я могу объявить диапазон Char
в Kotlin, который охватывает четырехбайтовый диапазон?
private val CJK_IDEOGRAPHS_EXT_A = '\u3400' .. '\u4DBF' // OK
private val CJK_IDEOGRAPHS_EXT_B = '\u20000' .. '\u2A6DF' // doesn't compile
Я попробовал следующий хак, но получаю предупреждение: "этот бросок никогда не может success ":
private val CJK_IDEOGRAPHS_EXT_B: CharRange = 0x20000 as Char .. 0x2A6DF as Char
В основном я хочу реализовать такую функцию:
fun isCJK(c: Char): Boolean {
return c in CJK_RADICALS ||
c in CJK_SYMBOLS ||
c in CJK_STROKES ||
c in CJK_ENCLOSED ||
c in CJK_IDEOGRAPHS ||
c in CJK_COMPAT ||
c in CJK_COMPAT_IDEOGRAPHS ||
c in CJK_COMPAT_FORMS ||
c in CJK_IDEOGRAPHS_EXT_A
// EXT_B not working
// EXT_C not working
// EXT_D not working
// EXT_E not working
// EXT_F not working
}
Я использую Kotlin в Android.