标签: null-check

null!= something和something之间的区别!= null

Java null != somethingsomething != nullJava 之间是否存在差异?如果存在差异,那么我应该使用哪一个?为什么?

java null-check

1
推荐指数
2
解决办法
1283
查看次数

Java null检查对象

好吧,这是一个简单的问题,我没有任何问题,但我只是想确定.如果我做这样的事情,这是正确的吗?

if (person != null && person.getAge > 20) {...}
Run Code Online (Sandbox Code Playgroud)

我可以这样做吗?在同一行上进行null检查和对象访问?它是否正确?或者我必须在null检查语句上做一个内部语句,如:

if (person != null)
{
    if (person.getAge() > 20) {...}
}
Run Code Online (Sandbox Code Playgroud)

imo,第一个声明不会抛出NPE,但我需要专业人士的反馈......

一般来说,我的问题是,对于带有&&的if语句,如果第一个布尔值为false,JVM是否会停止执行if语句,否则它将全部检查?

java if-statement nullpointerexception null-check

1
推荐指数
1
解决办法
1296
查看次数

Java 8可选/功能代码优化

有一个接收"someObj"的方法,其目的是检查类型Set <>的var ASet,迭代它并用数据库对象替换它的对象.为此,我写了以下代码:

if(!CollectionUtils.isEmpty(someObj.getASet())){
        someObj.setASet(
            someObj.getASet()
                    .stream()
                    .map( c -> AService.getExistingA(c.getId()))
                    .collect(Collectors.toSet())
       );
    }
Run Code Online (Sandbox Code Playgroud)

这样做的目的,但我真的不满意它的可读性.

 Optional.ofNullable(someObj.getASet())
            .ifPresent( ASet->  someObj.setASet(
                                                ASet.stream()
                                                .map( c -> AService.getExistingA(c.getId()))
                                                .collect(Collectors.toSet())
            ));
Run Code Online (Sandbox Code Playgroud)

现在它看起来更不易读,你能推荐更好的方法吗?我认为最糟糕的问题是someObj.setASet,它看起来很奇怪,是否有任何功能方式可以在收集后替换该对象?

optimization java-8 null-check

1
推荐指数
1
解决办法
485
查看次数

Swift:如何检查变量是否存在

我正在尝试检查Swift中是否存在变量(或更确切地说是数组的特定索引)。

如果我用

if let mydata = array[1] {
Run Code Online (Sandbox Code Playgroud)

如果索引具有值,则会出现错误,如果索引没有值,则会崩溃。

如果我用

if array[1] != nil {
Run Code Online (Sandbox Code Playgroud)

我收到编译器警告和/或崩溃。

本质上,我只是试图获取命令行参数(可以是任何文件名)并检查是否包含了这些参数。我见过的所有命令行参数示例都使用switch / case语句,但是要检查已知文本,而不是更改文件名。

我仍然在Xcode中使用以下内容获取索引超出范围错误:

if arguments.count > 1 {
    var input = arguments[2]
} else {
}
Run Code Online (Sandbox Code Playgroud)

arrays null-check swift

1
推荐指数
1
解决办法
1309
查看次数

我可以将对象的空值检查作为OR语句中的另一个条件吗?

可能重复:
在.NET中依赖&&短路安全吗?

我不确定如何正确地标出问题的标题,但用一行代码解释起来非常简单:

if (someObject == null || someObject.someProperty)
    ...
Run Code Online (Sandbox Code Playgroud)

我能这样做吗?或者这一个:

if (someObject != null && someObject.someProperty)
    ...
Run Code Online (Sandbox Code Playgroud)

c# null-check

0
推荐指数
1
解决办法
121
查看次数

How to check Boolean for null?

I want to add a null check to my ternary operator which checks on a Boolean isValue:

public String getValue() {
    return isValue ? "T" : "F";
}
Run Code Online (Sandbox Code Playgroud)

My task is:

What if the Boolean(object) return null? Add a boolean check and return "" (empty String in case if its null).

Note that isValue is a Boolean, not boolean.

java ternary-operator wrapper null-check

0
推荐指数
1
解决办法
105
查看次数

空检查+在同一行取消引用

在同一行上检查null和取消引用是否存在任何危险?

如果myObj实际上为null,那么此代码将如何表现?

不同语言处理此类情况(例如C#与Java)的方式是否有所不同

例如,如下所示

if(myObj != null && myObj.someProp == "Test")
{
  //...
}
Run Code Online (Sandbox Code Playgroud)

c# java null-check

0
推荐指数
1
解决办法
45
查看次数

使用linq之前检查list是否为null

我想使用LINQ检查myList!= null,然后执行Where。

我知道我会写

if (myList != null { myList.Where(p => p.x == 2 && p.y == 3); }

但我想使用: myList?.Where(p => p.x == 2 && p.y == 3);

这样行吗?

如果没有,您还知道其他哪些优雅的解决方案?

c# linq null-check

0
推荐指数
2
解决办法
80
查看次数

Kotlin 无法确定我已经检查过该项目是否在集合中

val map = mapOf(
    'a' to 1,
    'b' to 2,
    'c' to 3
)

val c = 'a'
if (c in map) {
    println(map[c] + 1)
}
Run Code Online (Sandbox Code Playgroud)

在简单的代码存根中,Kotlin 编译器不允许我在println. 它向我大喊并发出以下警告:

Operator call corresponds to a dot-qualified call 'map[c].plus(1)' which is not allowed on a nullable receiver 'map[c]'.

这让我发疯,我不想让它!!安静下来。

null-check kotlin

0
推荐指数
1
解决办法
71
查看次数

Sort a Java collection object based on one field in it and apply checks

retList.sort((comp1, comp2) ->
         compartmentOrderMap.get(comp2.getCompartment()).compareTo(compartmentOrderMap
        .get(comp1.getCompartment())));
Run Code Online (Sandbox Code Playgroud)

I want to add a null check before comparing. How can I do that?

retList.sort((comp1, comp2) ->
            if(compartmentOrderMap.get(comp2.getCompartment()) != null && compartmentOrderMap.get(comp1.getCompartment()) != null)
                compartmentOrderMap.get(comp2.getCompartment()).compareTo(compartmentOrderMap
                .get(comp1.getCompartment()));
        );

//I want to do something like this
Run Code Online (Sandbox Code Playgroud)

java list java-8 null-check

0
推荐指数
1
解决办法
65
查看次数

C# 中空检查和空条件运算符之间是否存在性能差异?

我想知道这两个 if 语句之间的性能是否存在差异:

if(myObject != null && myObject.someBoolean)
{
    // do something
}

if (myObject?.someBoolean ?? false)
{
    // do something
}
Run Code Online (Sandbox Code Playgroud)

如果性能存在差异,支持哪种方法以及为什么?

编辑: 这不是我的应用程序的瓶颈,我并不是试图过度优化,我只是好奇。

c# performance null-check null-conditional-operator

0
推荐指数
1
解决办法
389
查看次数