相关疑难解决方法(0)

仅当在Java8中使用lambda时不为null时才过滤值

我有一个对象列表说car.我想基于使用Java 8的一些参数来过滤此列表.但是如果参数是null,它会抛出NullPointerException.如何过滤掉空值?

目前的代码如下

requiredCars = cars.stream().filter(c -> c.getName().startsWith("M"));
Run Code Online (Sandbox Code Playgroud)

NullPointerException如果getName()返回则抛出null.

java null lambda nullpointerexception java-8

146
推荐指数
5
解决办法
18万
查看次数

BigDecimal的java数学库,允许空值

是否有一个BigDecimal库,其中包含允许空值的BigDecimal基本操作?

出于数学目的,Null应被视为0.

我不想对可能的空值进行所有空值检查.

您永远不会在数据库,应用程序或视图中允许空值并初始化所有内容new BigDecimal(0)或对可空值的每次使用执行空值检查.

就像是:

public static BigDecimal add(final BigDecimal value, final BigDecimal augend)
{
    if (value == null)
        return augend;
    else if (augend == null)
        return value;
    else
        return value.add(augend);
}

public static BigDecimal multiply(final BigDecimal value, final BigDecimal multiplicand)
{
    if (value == null || multiplicand == null)
        return null;

    return value.multiply(multiplicand);
}
Run Code Online (Sandbox Code Playgroud)

java bigdecimal

10
推荐指数
3
解决办法
7万
查看次数

如何使用java流找到集合中最小的BigDecimal字段?

我想使用java流来迭代列表并找到BigDecimal最低价格.以下说明,但不起作用(因为min()不能接受BigDecimal.

class Product {
    public BigDecimal price;
}

List<Product> products;
products.stream().min((Product) p -> p.price);
Run Code Online (Sandbox Code Playgroud)

java java-8 java-stream

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