如何从下面这段代码中获取到map中的另一个值 // 获取任务规则明细的第一条记录的 Optional 对象 Optional<Map<String, Object>> mapOptional = getResult(taskRuleDetailsOptional.get()).stream().findFirst(); // 如果任务规则明细的第一条记录的 "reading_article_platform_shared" 字段不是 "1",则将 appCode 添加到已完成任务数量的键名中 if (mapOptional.map(map -> map.get("reading_article_platform_shared")) .map(o -> !"1".equals(o)).orElse(false)) { readCountKey += ":" + taskDTO.getAppCode(); }
时间: 2023-02-06 21:54:29 浏览: 156
如果要获取 map 中的另一个值,可以使用 map 方法,如下所示:
mapOptional.map(map -> map.get("另一个值的键名"))
如果要获取 map 中的多个值,可以把 map 方法放在多个 .map() 方法的链中,例如:
mapOptional.map(map -> map.get("键名1")).map(value1 -> map.get("键名2")).map(value2 -> ……)
在上面的代码中,要获取 map 中的 "reading_article_platform_shared" 字段,可以使用如下代码:
mapOptional.map(map -> map.get("reading_article_platform_shared"))
如果要获取 map 中的多个字段,可以使用如下代码:
mapOptional.map(map -> map.get("键名1")).map(value1 -> map.get("键名2")).map(value2 -> ……)
注意:在使用 .map() 方法时,应该根据 map 中的值的数据类型来选择合适的转换方法。例如,如果 map 中的值是字符串,则可以使用 .map(String::valueOf) 来转换为字符串。
阅读全文