此问题在此处已有答案:
(19个答案)
昨天关门了。
如果我想检索某个元素怎么办?我们不能在SET中通过get()方法检索吗?或者如果我想通过get方法检查if element是否等于某个值。
如果我不想通过创建List和添加Set元素来产生任何额外的空间,那么就检索特定的元素。
我们不能用get()方法代替contains()方法吗?
type here
Set<String> hs = new HashSet<>();
String s = "PRAKASH";
hs.add("A");
hs.add("K");
hs.add("A");
hs.add("S");
hs.add("H");
for(int i=0;i<hs.size();i++){
if(hs.get(1).equals(s.charAt(i))
{
//Access
//Logic
}
}
我想知道为什么Java没有在SET中包含get()。我的意思是SET没有插入顺序,所以可能他们没有提供get()方法。但是我们想检查equals()方法的一些东西,我们如何优化代码而不创建额外的空间,如ArrayList或数组来检索元素。
1条答案
按热度按时间lh80um4z1#
你不需要
get
什么。使用
boolean Collection#contains(Object o)
,让集合(无论是什么类型)负责比较。