Я читал этот блог и не могу понять, что подразумевается ниже для reified String.
И Swift, и Kotlin включили концепцию обнуляемых типов.Тот факт, что переменная может содержать нуль, становится частью типа этой переменной. Переменная типа String не может содержать ноль;он может содержать только утонченную строку .С другой стороны, переменная типа String?имеет тип NULL и может содержать NULL. Правила языка настаивают на том, что когда вы используете переменную NULL, вы должны сначала проверить эту переменную на NULL.Так что, если s это строка?тогда var l = s.length () не скомпилируется.Вместо этого вы должны сказать var l = s.length ()?: 0 или var l = if (s! = Null) s.length () иначе 0.
И Swift, и Kotlin включили концепцию обнуляемых типов.Тот факт, что переменная может содержать нуль, становится частью типа этой переменной. Переменная типа String не может содержать ноль;он может содержать только утонченную строку .С другой стороны, переменная типа String?имеет тип NULL и может содержать NULL.
Правила языка настаивают на том, что когда вы используете переменную NULL, вы должны сначала проверить эту переменную на NULL.Так что, если s это строка?тогда var l = s.length () не скомпилируется.Вместо этого вы должны сказать var l = s.length ()?: 0 или var l = if (s! = Null) s.length () иначе 0.
reified означает «сделать (что-то абстрактное) более конкретным или реальным». Здесь reified string означает, что если строка равна нулю, то вывод этой строки содержит 0 или любое другое значение.