我需要展示从高度非结构化的 Web 服务中挑选的高度结构化的信息。为了正确显示信息,我必须进行大量字符串匹配和重复删除,以确保我选择了正确的元素组合。
我的挑战之一是确定字符串是否在字符串数组中。
我的梦想是做“searchString.isIn(stringArray);”但我意识到 String 类没有提供这一点。
除了这个 stub 之外,还有更有效的方法吗?:
private boolean isIn(String searchString, String[] searchArray)
{
for(String singleString : searchArray)
{
if (singleString.equals(searchString)
return true;
}
return false;
}
谢谢!
最佳答案
您可能需要查看 HashMap或 HashSet ,两者都提供恒定的时间检索,而且非常简单:
hashSet.contains(searchString)
此外,HashSet(及其键的 HashMap)防止重复元素。
如果你需要保持它们的插入顺序,你可以查看它们的 Linked同行,如果您需要对它们进行排序,TreeSet和 TreeMap 可以提供帮助(但是请注意,TreeSet 和 TreeMap 不提供恒定时间检索)。
关于java - 使用 Java 实现字符串数组 "is in"方法的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5107581/