多谢各位了。
请顺便留下使用方法。
18 个解决方案
#1
你说的是map吗
#2
随便说一下,用一个Vector, 然后你写的那个add方法加一个判断就ok
#3
用Set就可以了,HashSet或者TreeSet。现成的啊。
#4
map好一点
#5
循环判断,然后就可以了。
#6
用Set好一些
#7
HashSet和LinkedHashSet保存的值都不允许重复,LinkedHashSet拥有HashSet的查询速度,且是有次序的(按插入的次序).常用方法:add添加元素,contains判断某元素是否在集合中.
#8
HashSet如果不判断元素是否在集合中,直接插入2个相同的对象。报什么错呢?
#9
HashSet是根据对象的HashCode来判断是否相等,所以不用你做判断,如果在插入对象时发现已经有一个和它相等的了,就返回已插入的对象,什么都不做。
#10
HashSet赞同
#11
那如何便利HashSet,输出该集合中所有的值呢?
#12
to flyforlove(为情飞)
怎么可能用hashCode来判断是否相等呢?
add方法不是返回一个boolean吗?
怎么可能用hashCode来判断是否相等呢?
add方法不是返回一个boolean吗?
#13
用SET类.SET本身就不允许相同的值
#14
Set的遍历只能用Iterator
你会发现Set接口和Collection接口是一模一样,只有注释不一样!
你会发现Set接口和Collection接口是一模一样,只有注释不一样!
#15
Set的遍历只能用Iterator。有没有例子阿?帮忙贴一个。
#16
Set set;
for(Iterator it=set.iterator();it.hasNext();){
Object ele=it.next();
//
}
for(Iterator it=set.iterator();it.hasNext();){
Object ele=it.next();
//
}
#17
to treeroot(旗鲁特)
HashSet其实内部用的是HashMap,HashSet中的每一个对象,其实就是HashMap中的一个Key,所以其实它是根据HashCode来判断是否相等的。
对不起,我说错了一点,就是当添加一个对象时,如果已有相等的对象的话,HashMap中的put方法会返回原有对象,而HashSet中add方法是通过HashMap中的put方法的返回值是否等于null来返回一个布尔值。
HashSet其实内部用的是HashMap,HashSet中的每一个对象,其实就是HashMap中的一个Key,所以其实它是根据HashCode来判断是否相等的。
对不起,我说错了一点,就是当添加一个对象时,如果已有相等的对象的话,HashMap中的put方法会返回原有对象,而HashSet中add方法是通过HashMap中的put方法的返回值是否等于null来返回一个布尔值。
#18
多谢。。。
#1
你说的是map吗
#2
随便说一下,用一个Vector, 然后你写的那个add方法加一个判断就ok
#3
用Set就可以了,HashSet或者TreeSet。现成的啊。
#4
map好一点
#5
循环判断,然后就可以了。
#6
用Set好一些
#7
HashSet和LinkedHashSet保存的值都不允许重复,LinkedHashSet拥有HashSet的查询速度,且是有次序的(按插入的次序).常用方法:add添加元素,contains判断某元素是否在集合中.
#8
HashSet如果不判断元素是否在集合中,直接插入2个相同的对象。报什么错呢?
#9
HashSet是根据对象的HashCode来判断是否相等,所以不用你做判断,如果在插入对象时发现已经有一个和它相等的了,就返回已插入的对象,什么都不做。
#10
HashSet赞同
#11
那如何便利HashSet,输出该集合中所有的值呢?
#12
to flyforlove(为情飞)
怎么可能用hashCode来判断是否相等呢?
add方法不是返回一个boolean吗?
怎么可能用hashCode来判断是否相等呢?
add方法不是返回一个boolean吗?
#13
用SET类.SET本身就不允许相同的值
#14
Set的遍历只能用Iterator
你会发现Set接口和Collection接口是一模一样,只有注释不一样!
你会发现Set接口和Collection接口是一模一样,只有注释不一样!
#15
Set的遍历只能用Iterator。有没有例子阿?帮忙贴一个。
#16
Set set;
for(Iterator it=set.iterator();it.hasNext();){
Object ele=it.next();
//
}
for(Iterator it=set.iterator();it.hasNext();){
Object ele=it.next();
//
}
#17
to treeroot(旗鲁特)
HashSet其实内部用的是HashMap,HashSet中的每一个对象,其实就是HashMap中的一个Key,所以其实它是根据HashCode来判断是否相等的。
对不起,我说错了一点,就是当添加一个对象时,如果已有相等的对象的话,HashMap中的put方法会返回原有对象,而HashSet中add方法是通过HashMap中的put方法的返回值是否等于null来返回一个布尔值。
HashSet其实内部用的是HashMap,HashSet中的每一个对象,其实就是HashMap中的一个Key,所以其实它是根据HashCode来判断是否相等的。
对不起,我说错了一点,就是当添加一个对象时,如果已有相等的对象的话,HashMap中的put方法会返回原有对象,而HashSet中add方法是通过HashMap中的put方法的返回值是否等于null来返回一个布尔值。
#18
多谢。。。