我已经使用Java 8实现了以下代码。
Map<String, String> coMap = getHashMap();
String newCoName = coMap.entrySet()
.stream()
.filter(coEntry -> coEntry.getValue().equals(newcoId))
.map(coEntry -> coEntry.getKey())
.collect(Collectors.joining());
String oldCoName = coMap.entrySet()
.stream()
.filter(coEntry -> coEntry.getValue().equals(oldcoId))
.map(coEntry -> coEntry.getKey())
.collect(Collectors.joining());
现在。我想知道执行此操作的更好方法,而不是重复相同的代码行两次。
最佳答案
由于整个区别是一个id,因此可以使用一个简单的方法来完成。
String getName(int id) { // supposed id is an integer
return coMap.entrySet()
.stream()
.filter(coEntry -> coEntry.getValue().equals(id))
.map(coEntry -> coEntry.getKey())
.collect(Collectors.joining());
}