一个List<User>, 其中user有name属性,我想知道里面的user的名字有没有重复的,这个list比较大,怎么才能快速检查完呢?
解决方案 »
- oa的计划任务管理有哪些功能,有哪些界面设计的思路,大家提点意见呀???
- java聊天程序的客户端代码问题求解
- 关于JFram的重大问题?
- 继承里的问题
- 多个TextField是用FocusAdapter进行验证,急急急.........................
- 想学JAVA,VC++的兄弟进来。
- 各位大虾:有没有什么办法来动态替换jre/lib下的.jar呢?
- applet中如何弹出一个网页~~~在线等待,回答即给分
- java swing jscrollpane 问题,求高人修正
- 想找个java方面的实习或工作一定得会Ajax和SSh吗?在校也没怎么学这方面的内容啊,自己也还没看。是不是一定得会才行啊?
- 代码没错,编译没错,最后还是错了,特悬赏50分
- 这是什么错误!不影响运行,关闭Tomcate时候出现的,ECLIPSE内置的那个!
建立一个set,
遍历list,每一个名字先判断set中是否没有,如果Set中没有,则加入Set,
如果已经有,则说明该名字有重复。
Set userNameSet;
List userList;
for(User u:userList){
if (userNameSet.contains(u.getName())){
System.out.println(u.getName()+" already exist.");
}
}
if(list.contains(u.getName)){
System.out.println(u.getName()+" already exist.");
}
Set userNameSet= new HashSet();
for(User u:userList){
if (userNameSet.contains(u.getName())){
System.out.println(u.getName()+" already exist.");
}
else
userNameSet.add(u.getName());
}
是因为有contains函数的缘故?
个人觉得这样效率比较高