抛出NullPointerException的不是
对映射进行排序<字符串,对象>
字符串值可以是Integer、Double或normal(必须将字符串解析为Integer(
[一次,所有密钥将仅为一种数据类型]
密钥可以为空
nullsLast(comparing(o -> Double.valueOf(o.getKey())));
正在投掷NPE。
如何使其发挥作用?
nullsLast
,而是Double.valueOf(String)
方法。
您可以通过显式检查null来处理此问题。
第二个问题是comparing
不支持空值。您要做的是通过对象的键(解析为Double(来比较对象,使用nullsLast
比较器来比较键:
comparing(o -> o.getKey() == null ? null : Double.valueOf(o.getKey()), nullsLast(Comparator.naturalOrder()));