如何获取给定LinkedHashSet元素的索引而无需迭代?

可能吗?

说你有

private Set<String> names = new LinkedHashSet<String>();

并且Strings是“迈克”,“约翰”,“卡伦”。

是否可以不经过迭代就返回“约翰”的索引是“ 1”?

以下工作正常..与此问题,我想知道是否有更好的方法

for (String s : names) {

++i;

if (s.equals(someRandomInputString)) {

break;

}

}

回答:

Set接口并没有像作为一种indexOf()方法。您确实需要对其进行迭代或使用提供方法的List接口代替。indexOf()

如果你想,转换SetList是很琐碎,它应该是传递的问题Set通过的构造函数List执行。例如

List<String> nameList = new ArrayList<String>(nameSet);

// ...

以上是 如何获取给定LinkedHashSet元素的索引而无需迭代? 的全部内容, 来源链接: utcz.com/qa/431847.html

回到顶部