Questions tagged «non-nullable»

11
没有空值的语言的最佳解释
当程序员抱怨空错误/异常时,经常有人问我们在没有空的情况下该怎么做。 我对选项类型的简洁性有一些基本了解,但是我没有足够的知识或语言技能来表达它。对以下内容的一个很好的解释是什么,使我们可以指向普通程序员,使之接近普通程序员? 默认情况下,不希望引用/指针为空 选项类型如何工作,包括简化检查空情况的策略,例如 模式匹配和 一元理解 替代解决方案,例如吃零信息 (我错过了其他方面)

1
在Kotlin中,处理空值,引用或转换它们的惯用方式是什么
如果我有一个可为null的类型Xyz?,我想引用它或将其转换为不可为null的类型Xyz。Kotlin的惯用方式是什么? 例如,此代码是错误的: val something: Xyz? = createPossiblyNullXyz() something.foo() // Error: "Only safe (?.) or non-null asserted (!!.) calls are allowed on a nullable receiver of type Xyz?" 但是,如果我先检查null就是允许的,为什么? val something: Xyz? = createPossiblyNullXyz() if (something != null) { something.foo() } 假设我确定它永远不会,null该如何在不if检查的情况下更改或不对待一个值null?例如,在这里我从映射中检索一个可以保证存在的值,get()而not 的结果null。但是我有一个错误: val map = mapOf("a" to 65,"b" to 66,"c" …

3
对DTO使用可空引用类型的最佳实践
我有一个DTO,它是通过从DynamoDB表中读取来填充的。说当前看起来像这样: public class Item { public string Id { get; set; } // PK so technically cannot be null public string Name { get; set; } // validation to prevent nulls but this doesn't stop database hacks public string Description { get; set; } // can be null } 有什么最佳实践可以解决这个问题?我宁愿避免使用非参数构造函数,因为它与Dynamo …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.