我正在一个基于Kotlin的项目中工作,它迫使我处理可能持有null的任何属性。很高兴在不受欢迎的情况下发现无效的地方是可能的。但是我看到了DB生成的属性的?.
s和 .!!
s,例如IDS。也许我正在虐待那个操作员?
是否有任何标记属性不可根据,但此处仍然有DB生成的值?如果我查找一个对象,则可以安全地假设生成的DB生成的值已不再为空。可以知道VM吗?也许是通过框架或语言提供的一些注释?
如果您的ID是由数据库生成的,则可以无效,因为JVM/Compiler/IDE无法知道您的实体是否已经持久。
您可以做的是实现其他方法,这些方法可以通过抛出异常来返回非null值。