Java入門第三季集合框架下中的collections問題
do{ k=random.nextInt(); }while(integerList.contains(k)); 為什么能判斷不重復(fù)?whlie中包含的條件意思應(yīng)該是當(dāng)interList中含有該k,繼續(xù)執(zhí)行循環(huán)語句嗎?
do{ k=random.nextInt(); }while(integerList.contains(k)); 為什么能判斷不重復(fù)?whlie中包含的條件意思應(yīng)該是當(dāng)interList中含有該k,繼續(xù)執(zhí)行循環(huán)語句嗎?
2017-06-03
舉報
2017-08-25
這個do??? while循環(huán)在FOR循環(huán)里面,而for循環(huán)已經(jīng)把k值添加進list了,所以能判斷啊
2017-06-03
我是覺得是這樣的。執(zhí)行contains方法的時候是調(diào)用integerList中的每個元素的equal方法與參數(shù)中的int值進行比較(此int參數(shù)應(yīng)該被自動裝箱成Integer類型了),然后如果integerList中有和參數(shù)相等的元素返回true。
2017-06-03
好巧,正好系統(tǒng)把你的問題推送我了呢。第一次回答問題,有點小激動的說。你理解的沒錯呀,要勇于肯定自己。
這個就是一個典型的do-while循環(huán),先用random.nextInt()生成一個隨機數(shù),然后用IntegerList.contains()方法判斷是否已經(jīng)存在該值,如果存在就重新生成。IntegerList相當(dāng)于一個容易,每次生成隨機數(shù)放到這個容器里檢查一遍是不是已經(jīng)存在了