non-nullable相关内容

在 Android Studio 中使用 @NonNull 注解的正确方法

我想在 Android 中使用 @NonNull 注释,但我想不出正确的方法.我建议你这个例子: public void doStuff(@NonNull String s){//和s一起工作...} 所以当我调用 doStuff(null) 时,IDE 会给我一个警告.问题是我不能依赖这个注释,因为像 this 问题指出,它们不会传播很远.所以我想对我的方法进行空检查,如下所示: if( ..
发布时间:2022-01-13 10:40:01 Java开发

'android.annotation.NonNull' 在 'android.annotation' 中不公开.无法从外部包访问

我在尝试列出数据时收到此警告.有谁知道为什么? 解决方案 您指的是 Android 平台的内部注解,这些注解并不是您想要用于您自己的代码的注解.对于您的代码,您应该导入这些注释的 AndroidX 版本: androidx.annotation.NonNull androidx.annotation.Nullable 等等.(注意 androidx vs android ..
发布时间:2022-01-13 10:30:22 Java开发

没有 null 的语言的最佳解释

当程序员抱怨 null 错误/异常时,经常有人问我们没有 null 怎么办. 我对选项类型的酷炫有一些基本的了解,但我没有知识或语言技能来最好地表达它.对于以下以普通程序员平易近人的方式编写的以下内容的优秀解释是什么,我们可以将其指向该人? 不希望引用/指针默认为可空 选项类型的工作原理,包括简化检查空情况的策略,例如 模式匹配和 单一理解 替代解决方案,例如消息吃 nil ..

在 Kotlin 中,处理可为空值、引用或转换它们的惯用方法是什么?

如果我有一个可空类型 Xyz?,我想引用它或将它转换为不可空类型 Xyz.在 Kotlin 中这样做的惯用方式是什么? 例如这段代码是错误的: val something: Xyz?= createPossivelyNullXyz()something.foo()//错误:“在 Xyz 类型的可空接收器上只允许安全 (?.) 或非空断言 (!!.) 调用?"; 但是如果我先检查 null ..
发布时间:2021-12-10 16:38:40 其他开发

关于不可为空类型的争论

我一直听到人们谈论不可空引用类型如何解决如此多的错误并使编程变得如此简单.甚至 null 的创建者也称其为他的十亿美元的错误,以及Spec# 引入了不可为空的类型来解决这个问题. 编辑:请忽略我对 Spec# 的评论.我误解了它的工作原理. EDIT 2:我一定是在和错误的人说话,我真的希望有人与之争论:-) 所以我猜,作为少数,我错了,但我不明白为什么这场辩论有任何价值.我认为 ..
发布时间:2021-11-26 20:04:41 其他开发

所有子包的 IntelliJ IDEA @ParametersAreNonnullByDefault

我使用 IntelliJ 的空检查机制来防止空指针崩溃.我已经使用 this 答案成功地将所有 Java 方法参数默认设置为 @NonNull. 创建用于定义包的package-info.java之后Java中的注释.作为该包的直接后代的所有 java 文件在我的 Android Studio 项目中都有带有默认 @NonNull 参数的方法. 明显的问题是我需要为该包中的所有 Jav ..
发布时间:2021-11-21 19:01:07 Java开发

在 Java 中为 Kotlin 编译器注释类型参数

在Java中,我有以下方法: public 可选getFoo() {//总是返回一些非空值} 在 Kotlin 代码中,此方法的返回类型为 Optional!.通过使用 @Nonnull 注释,我可以将其缩减为 Optional(即只有 Foo 类型不是空检查的不再). 有没有办法对方法进行注释,让 Kotlin 编译器正确地对返回值进行空检查? 解决方案 您可以通过注释 输入 ..
发布时间:2021-11-10 23:11:33 其他开发

Getter 和@Nonnull

我收到了来自 eclipse 的警告,我知道我可以通过抑制警告来删除它,但我更想了解是什么使它可能为空. package-info.java @ParametersAreNonnullByDefault包装测试;导入 javax.annotation.ParametersAreNonnullByDefault; test.java 包测试;公共类测试{公共静态无效主(最终字符串[] a ..
发布时间:2021-11-10 22:46:03 Java开发

在 Android Studio 中使用 @NonNull 注释的正确方法

我想在 Android 中使用 @NonNull 注释,但我想不出正确的方法.我建议你这个例子: public void doStuff(@NonNull String s){//与 s 一起工作...} 所以当我调用 doStuff(null) 时,IDE 会给我一个警告.问题是我不能依赖这个注释,因为像 this 问题指出,它们不会传播很远.所以我想对我的方法进行空检查,如下所示: i ..
发布时间:2021-11-10 22:20:39 Java开发

“android.annotation.NonNull"在“android.annotation"中不是公开的.无法从外部包访问

当我尝试列出数据时收到此警告.有谁知道为什么? 解决方案 您指的是 Android 平台的内部注释,这些注释不是您想用于自己的代码的注释.对于您的代码,您应该导入这些注释的 AndroidX 版本: androidx.annotation.NonNull androidx.annotation.Nullable 等等.(注意 androidx 和 android 中额外的 x) ..
发布时间:2021-11-10 22:16:41 Java开发

打字稿类型 RequireSome从属性中删除 undefined AND null

RequireSome 来自另一个非常相似的问题.这个问题很相似,但它不应该是重复的,因为在这里我们要也删除 null 以及从属性中删除 undefined. 也许名称不应该是 Require 而是类似 NonNullable 或此类的名称.此类型的目标是指定类型中的哪些字段不应是 undefined 或 null,并返回它们的类型,而不是 undefined 和 null. type Q ..
发布时间:2021-06-10 18:47:46 其他开发

"android.annotation.NonNull"在"android.annotation"中不公开.无法从外部包访问

当我尝试列出数据时收到此警告. 有人知道为什么吗? 解决方案 您指的是Android平台的内部注释,这些注释不是您想要用于自己的代码的注释.对于您的代码,您应该导入这些注释的AndroidX版本: androidx.annotation.NonNull androidx.annotation.Nullable 等(请注意androidx与android中的额外x) ..
发布时间:2020-08-30 21:55:48 Java开发

Java泛型,其返回类型具有@NonNull和Collections

我想在Java8中实现一个泛型函数,该函数验证集合没有空成员并返回带有@NonNull批注的类型. 输入类型:T扩展Collection,其中T + U可为空. 结果类型:@NonNull T,带有@NonNull U 对于数组,它看起来像这样: public static @NonNull T @NonNull[] arrayHasNoNullMember( @Nul ..
发布时间:2020-07-01 19:55:34 Java开发

在FFI中使用ptr :: NonNull是否有效?

Rust具有 ptr::NonNull 类型表示非NULL指针.在FFI中使用这种类型是否安全? 是否保证具有相同的二进制表示形式(忽略非FFI上下文,例如Option优化),对齐方式,将使用情况注册为*mut T? 例如,我可以实现此接口吗? void call_me_from_c(char *without_nulls) __attribute__((nonnull)); ..
发布时间:2020-07-01 19:55:31 其他开发

C#创建一个不可为空的字符串.是否有可能?不知何故?

所以您不能继承string.您不能创建不可为空的string.但是我想这样做.我想要一个类,我们将其称为nString,否则它将为null时将返回默认值.我有可能知道谁有多少个空字符串甚至什至空对象的JSON对象.我想创建具有永远不会返回null的字符串的结构. public struct Struct { public nString value; public nStri ..
发布时间:2020-07-01 19:55:17 C#/.NET