229得票11回答
没有空值的编程语言的最佳解释

经常当程序员抱怨 null 错误/异常时,会有人问如果不用 null 会怎样。 我对选项类型的酷炫之处有一些基本概念,但我没有足够的知识或语言技能来最好地表达它。以下是一个可以向普通程序员解释的 好 的说明: 默认情况下将引用/指针设为可空的不可取性 选项类型的工作原理,包括简化检查 n...

204得票4回答
在Kotlin中,处理可空值的惯用方式是引用或转换它们?

如果我有一个可空类型Xyz?,我想引用它或将其转换为非空类型Xyz。在Kotlin中,惯用的做法是什么?例如,以下代码存在错误:val something: Xyz? = createPossiblyNullXyz() something.foo() // Error: "Only ...

59得票1回答
为什么@Nonnull注释需要在运行时进行检查?

我有一个带有以下签名的函数public static String myFunction(@Nonnull String param) 当我将参数设置为空时,我会收到以下异常:Caused by: java.lang.IllegalArgumentException: Argument for...

51得票3回答
在C#中创建非空类型

如何在C#中创建类似int、bool等非空值类型?

42得票2回答
使用可空引用类型处理DTO的最佳实践

我有一个DTO,通过读取DynamoDB表来填充它。当前看起来是这样的: public class Item { public string Id { get; set; } // PK so technically cannot be null public string ...

40得票6回答
为什么在C#中DateTime类型不允许为null?

为什么在C#中不允许将null赋值给DateTime?这是如何实现的?该特性是否可用于使您自己的类不可为空? 示例:string stringTest = null; // Okay DateTime dateTimeTest = null; // Compile error 我知道在C# ...

37得票1回答
如何指定“任何非空类型”作为泛型类型参数约束?

这篇文章是关于C# 8的。假设我想要这个方法:public static TValue Get<TKey, TValue>( this Dictionary<TKey, TValue> src, TKey key, TValue @default ) ...

28得票4回答
如何让Kotlin在将灵活/平台类型分配给非空类型时发出警告?

当从Kotlin调用一个没有nullability注释的Java函数时,我们会得到弹性类型的返回值,用感叹号标记,例如String!。 Kotlin默默地允许将这些弹性值分配给普通的非空类型,例如String,这可能导致运行时的NullPointerException。 我希望在这样的赋值...

28得票8回答
C#如何创建一个非空字符串?有可能吗?

所以你不能继承string。你不能创建一个非空的string。但我想做到这一点。我想要一个类,让我们称其为nString,当它本应为null时返回默认值。我有可能有很多null字符串,甚至是null对象的JSON对象。我想创建一些永远不会返回null的字符串的结构。public struct ...

28得票3回答
在Android Studio中正确使用@NonNull注解的方法

我想在安卓中使用@NonNull注释,但我不知道正确的使用方式。我给你提供一个例子:public void doStuff(@NonNull String s){ //do work with s... } 因此,当我调用 doStuff(null)时,IDE 会给我一个警告...