我有一个代码块:
public Builder withMultiValueMap(MultiValueMap<String, String> multiValueMap) {
...
withRespondentId(Long.valueOf(multiValueMap.getFirst("respondentId")));
...
return this;
}
如果没有 respondentId 键的值,map有时会返回 null 。 我可以使用类似
之类的东西来处理它 String respondentId = multiValueMap.getFirst("respondentId");
withRespondentId(respondentId == null? null: Long.valueOf(respondentId));
......但我想做得更好!
是否可以使用 java8 Optional 或其他内容进行简化?
答案 0 :(得分:1)
答案 1 :(得分:1)
如果MultiValueMap
是您自己的班级,则可以将getFirst
迁移到
Optional<V> getFirst(K key);
multiValueMap.getFirst(key).map(Long::valueOf).getOrElse(null);