首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

set集合有关问题,帮忙解答上,多谢

2012-12-17 
set集合问题,帮忙解答下,谢谢team里面有Set Students new HashSet() Team team new Team()team.setT

set集合问题,帮忙解答下,谢谢
team里面有
Set Students = new HashSet();

 Team team = new Team();
   team.setTeamName("team1");
   
   
   for(int i = 0; i < 1200; i++)
   {
   Student student = new Student();
   student.setName("lisi");
   student.setAge(30);
   student.setCardId("123456");
   student.setTeam(team);
   
    team.getStudents().add(student);
   }

为什么相同的student对象怎么都加到了set的集合里面去了
[最优解释]
Student类要重写 equals()和hashCode()方法。
[其他解释]
那是200个不同的student对象,只是刚好这些对象的内容一致,但在内存中它们分别占一个位置
正如楼上所言,可以重写equals方法,判定当名字相同,或者是全部资料都相同时就认为同一个student,那后面的就不会放进去了
[其他解释]
如2楼所说,这是200个不同的对象,不信用equals方法测试一下
[其他解释]
set只是单个值不重复,不是对象。每次new 都是一个新的地址,每个对象都不一样的地址。所以每次都set了不同的地址进去。

热点排行