在第一个ArrayList表中存放多条记录A,B ,C,D,E.....等对象,
在第二个ArrayLsit表中存放第一个表中的子集,如(A,E等对象)。
我如何能得出第一个ArrayList表的补集,即第一个ArrayList表中除去第二个ArrayList后剩余的结果
在第二个ArrayLsit表中存放第一个表中的子集,如(A,E等对象)。
我如何能得出第一个ArrayList表的补集,即第一个ArrayList表中除去第二个ArrayList后剩余的结果
解决方案 »
- java编写的聊天程序,但不知道好友界面怎么实时刷新!求思路,求指点!
- tcp网络编程问题
- JAVA快捷键
- 类反射问题请教!
- 【jFresH_MaN】100分问一个非常基础的问题,大家踊跃回答哦
- 100分求,谁有Java编程思想第三版的.chm格式的。
- 请问谁在参加Robocode 的设计啊?大家进来说说
- 关于linkarea的问题,请高手指点!!拜托了!!
- 请教listener在java程序中起着什么样的作用该怎么理解listener
- 救命啊!<input type="file" name="file1">怎么才能取到她的路径啊??急!!!!!!!!!!!
- 解析XML文件
- ByteArrayOutputStream写入问题,字符丢了
for (char c = 'A'; c <= 'E'; c++)
list1.add(new Character(c));List<Character> list2 = new ArrayList<Character>();
list2.add(new Character('A'));
list2.add(new Character('E'));list1.removeAll(list2);
不过这个操作是直接从list1里面删除的,如果需要保留list1的元素的话,需要预先手工拷贝一份
然后第一个ArrayLsit 换成ListedList 使用remove()方法最后在把ListedList 换回ArrayLsit注: ListedList的添加删除要比ArrayLsit效率快
ArrayLsit 的查询要比ListedList 效率快
http://community.csdn.net/Expert/topic/5319/5319310.xml?temp=.1032526
list1.removeAll(list2);
===============================
这个不错。加个条件就更好了。
if(list1.containAll(list2)){
list1.removeAll(list2);
}
list1.add("A");
list1.add("B");
list1.add("C");
list1.add("D");
list1.add("E"); ArrayList<String> list2 = new ArrayList<String>();
list2.add("B");
list2.add("E"); list1.removeAll(list2);
for(String s:list1){
System.out.println(s);
}