亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

為什么這個set數組中元素重復了?

import java.util.*;


public class SetTest {
?public Set<Course> setList;
?{
??setList=new HashSet<Course>();
?}
?public void testAdd(){
??Course c1 =new Course(4,"Add方法添加成功");
??setList.add(c1);
?}
?public void testAddAll(){
??Course[] c2 ={new Course(5,"addAll方法添加成功"),new Course(6,"addAll方法添加成功")};
??setList.addAll(Arrays.asList(c2));??
?}
?public void blForeach(){
??for(Object ob:setList){?
???Course b3 = (Course) ob;
???System.out.println(b3.id+":"+b3.name);
??}
??System.out.println();
?}
}

主函數
System.out.println("集合Set遍歷如下");
??SetTest s1 = new SetTest();
??s1.testAdd();
??s1.testAddAll();
??s1.testAdd();? //Set集合眾的元素無序且不重復,此添加無效
??s1.blForeach();

運行結果
集合Set遍歷如下
5:addAll方法添加成功
4:Add方法添加成功
4:Add方法添加成功
6:addAll方法添加成功

不是說set集合不能有重復的元素么。。。我這個程序是哪里錯了呢?


正在回答

1 回答

? set添加的是引用 你調用兩次add方法 創建了兩個Course對象?

如果 你是? ? Course c1 =new Course(4,"Add方法添加成功");
??setList.add(c1);? setList.add(c1);

這樣就添加無效??


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

Goldberg 提問者

曉得了曉得了 謝謝
2016-02-21 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么這個set數組中元素重復了?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號