java – 如何检查Map中的一个键是否以给定的String值开头

前端之家收集整理的这篇文章主要介绍了java – 如何检查Map中的一个键是否以给定的String值开头前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在寻找一种方法,如:
myMap.containsKeyStartingWith("abc"); // returns true if there's a key starting with "abc" e.g. "abcd"

要么

MapUtils.containsKeyStartingWith(myMap,"abc"); // same

我想知道有没有人知道一个简单的方法来做到这一点

谢谢

解决方法

这可以用标准的 SortedMap
Map<String,V> tailMap = myMap.tailMap(prefix);
boolean result = (!tailMap.isEmpty() && tailMap.firstKey().startsWith(prefix));

未排序的地图(例如HashMap)本质上不支持前缀查找,因此对于那些您不得不迭代所有密钥的地图.

猜你在找的Java相关文章