从java中的HashMap返回通配符匹配列表
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了从java中的HashMap返回通配符匹配列表,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1048字,纯文字阅读大概需要2分钟。
内容图文
![从java中的HashMap返回通配符匹配列表](/upload/InfoBanner/zyjiaocheng/698/f4a8e5666d924e57ab54662dd12a6140.jpg)
我有一个Hashmap,可能在String中包含通配符(*).
例如,
HashMap<String, Student> students_;
可以将约翰*作为一把钥匙.我想知道JohnSmith是否匹配student_中的任何元素.我的字符串可能有几个匹配(John *,Jo * Smith等).有什么方法可以从我的HashMap中获取这些匹配的列表吗?
是否有另一个我可能正在使用的对象,它不需要我遍历我的集合中的每个元素,或者我是否必须将它吸收并使用List对象?
仅供参考,我的收藏品中将包含少于200个元素,最终我希望找到与最少量通配符匹配的对.
解决方法:
由于散列函数,使用hasmap无法实现.它必须分配“John *”的散列和“John Smith”等的散列.相同的价值.
您可以使用TreeMap创建它,如果您编写自己的自定义类WildcardString包装String,并以“John *”.compareTo(“John Smith”)返回0的方式实现compareTo.您可以使用正则表达式来执行此操作other answers已经指出了.
看到你想要widlcard匹配列表,你可以随时删除条目,并迭代TreeMap.get().记得在完成名称后将钥匙放回去.
这只是实现它的一种可能方式.使用少于200个元素,你可以很好地迭代.
更新:要在TreeSet上正确强加顺序,您可以区分比较两个WildcardStrings(意味着它是键之间的比较)和将WildcardString与String(将键与搜索值进行比较)进行比较的情况.
内容总结
以上是互联网集市为您收集整理的从java中的HashMap返回通配符匹配列表全部内容,希望文章能够帮你解决从java中的HashMap返回通配符匹配列表所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。