为了账号安全,请及时绑定邮箱和手机立即绑定

Java入门第三季集合框架下中的collections问题

do{ k=random.nextInt(); }while(integerList.contains(k)); 为什么能判断不重复?whlie中包含的条件意思应该是当interList中含有该k,继续执行循环语句吗?

正在回答

3 回答

这个do    while循环在FOR循环里面,而for循环已经把k值添加进list了,所以能判断啊

0 回复 有任何疑惑可以回复我~

我是觉得是这样的。执行contains方法的时候是调用integerList中的每个元素的equal方法与参数中的int值进行比较(此int参数应该被自动装箱成Integer类型了),然后如果integerList中有和参数相等的元素返回true。

0 回复 有任何疑惑可以回复我~

好巧,正好系统把你的问题推送我了呢。第一次回答问题,有点小激动的说。你理解的没错呀,要勇于肯定自己。

这个就是一个典型的do-while循环,先用random.nextInt()生成一个随机数,然后用IntegerList.contains()方法判断是否已经存在该值,如果存在就重新生成。IntegerList相当于一个容易,每次生成随机数放到这个容器里检查一遍是不是已经存在了

0 回复 有任何疑惑可以回复我~
#1

阿布莱提阿布杜热西提

是容器,不是容易。
2017-06-03 回复 有任何疑惑可以回复我~
#2

伊人春风十里 提问者

这个怎么检查的?contains比较的应该是地址吧。你说的详细点,谢谢。
2017-06-03 回复 有任何疑惑可以回复我~
#3

君士坦丁11 回复 伊人春风十里 提问者

contains方法应该是把内容都包装好了在比较的,所以应该是靠equals实现的。
2017-06-03 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

Java入门第三季集合框架下中的collections问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信