第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么我的Set每次取出的順序一樣,不是每次都會變嗎?

為什么我用的是Set,每次的牌都是一樣的,雖然存進去的順序打亂了,但每次運行的結(jié)果都一樣。用foreach,歷遍元素輸出的也是一樣的。

正在回答

2 回答

使用集合元素添加元素后確實是無序的,但通過迭代器或者foreach輸出元素的順序幾乎都是一致的.具體跟哪些因素有關(guān)我也說不出.

所以涉及到打亂元素順序就不能使用set了.

0 回復(fù) 有任何疑惑可以回復(fù)我~

不應(yīng)該啊,貼代碼,一起看看

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

Paul666 提問者

public static void main(String[] args) { String[] cardnums={"2","3","4","5","6","7","8","9","10","J","Q","K","A"}; String[] cardcols={"黑桃","紅桃","梅花","方塊"};//創(chuàng)建撲克元素 Set<Card> h=new HashSet<Card>();//創(chuàng)建Set將撲克牌存入,用于打亂撲克牌
2016-04-09 回復(fù) 有任何疑惑可以回復(fù)我~
#2

Paul666 提問者

int m=cardcols.length*cardnums.length; for(int i=0;i<cardcols.length;i++){ for(int j=0;j<cardnums.length;j++){ int k=0; Card cards[]=new Card[m]; cards[k]=new Card(cardcols[i],cardnums[j]); h.add(cards[k]);//將撲克牌導(dǎo)入Set
2016-04-09 回復(fù) 有任何疑惑可以回復(fù)我~
#3

Paul666 提問者

for(Card ca:h){ System.out.println(ca.color+ca.cnum+" "); ? } 雖然順序打亂了。。但每次輸出的是一樣的。。
2016-04-09 回復(fù) 有任何疑惑可以回復(fù)我~
#4

Paul666 提問者

雖然程序問題已經(jīng)解決了。。用collections.shuffle()。。洗牌,。。。但是還是不懂Set怎么和老師講的不一樣..難道是老師每次都把不同元素存入了Set,而改變了Set里元素的順序;而我之后沒改變Set,所以雖然打亂了順序就只有一次?
2016-04-09 回復(fù) 有任何疑惑可以回復(fù)我~
查看1條回復(fù)

舉報

0/150
提交
取消

為什么我的Set每次取出的順序一樣,不是每次都會變嗎?

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號