繁体   English   中英

如何在 kotlin 中设置自定义返回类型可为空

[英]how to set custom return type nullable in kotlin

我创建了一个个人数据类型“电子邮件”,我怎样才能使这种类型的值可以为空。

例如。

private lateinit var a: email?

或者

fun makeEmailAddress(a: String): email? {
   // TODO
}

lateinit var在幕后使用空值来表示未初始化的值,因此从程序的角度来看,它们不能是可为空的类型。 也就是说,这个限制通常不是问题,因为大多数时候使用lateinit var的目的是让您可以使用非空类型,同时仍然延迟初始化。

如果您需要一个可为空的属性,您可以简单地删除lateinit修饰符并在声明它时将其初始化为null

private var a: Email? = null

对于 function 声明,返回类型Email? 应该可以工作:

fun makeEmailAddress(a: String): Email? {
   // return whatever you need here, either null or an Email instance
}

注意 Kotlin 中的类型按照约定都是大写的,所以我建议你将email重命名为Email (我在上面的示例代码中使用了大写的版本)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM