数组a["1","2","3"]
数组b["2","3","5"]
怎么最高效率的找出a在b里没有的数组结果,以及b在a里没有的数组结果
结果应该是数组c["1"]和d["5"]
数组b["2","3","5"]
怎么最高效率的找出a在b里没有的数组结果,以及b在a里没有的数组结果
结果应该是数组c["1"]和d["5"]
解决方案 »
- 关于Interface Iterator<E> 和 HashSet
- 新手求助:java awt的Frame中添加按钮和文本框组件无显示?
- 关于JAVA的随机文件操作
- 关于Panel拖动的问题,高手请进!!急!!!!
- 字符串小问题
- 杭电的1005题 Number Sequence 各位帮忙看看
- 回答过“大家都来谈谈自己学习Java的经验或看法!(来者有分)”的兄弟觉得给分不够的再接!!!!
- 如何改变一个整数对象的值
- 关于打包的问题
- 请教各位大虾们,我的忧愁你能解决!
- JS设置主页 弹出的框怎么获取 用户点啦“是”还是“否”呢
- [ssh2.jar包] 用SSH从终端读数据,由于颜色,引起乱码的问题。
public static void main(String[]args)
{
String a[]= {"1","2","3"};
String b[]={"2","3","5"};
List l1=new ArrayList(Arrays.asList(a));
List l2=new ArrayList(Arrays.asList(b));
List l3=new ArrayList(Arrays.asList(a));
List l4=new ArrayList(Arrays.asList(b));
l1.removeAll(l2);
System.out.println(l1);
l4.removeAll(l3);
System.out.println(l4);
}
import java.util.HashSet;
import java.util.Set;public class ArrayCompare { public static void main(String[] args) {
String[] s1 = {"1","2","3"};
String[] s2 = {"4","2","3"};
Set<String> set = new HashSet<String>();
set.addAll(Arrays.asList(s1));
set.addAll(Arrays.asList(s2));
System.out.println(set); //合集
Set<String> set2 = new HashSet<String>();
set2.addAll(Arrays.asList(s1));
set2.retainAll(Arrays.asList(s2));
System.out.println(set2); //交集
Set<String> set3 = new HashSet<String>();
set3.addAll(Arrays.asList(s1));
set3.removeAll(Arrays.asList(s2));
System.out.println(set3); //补集
}}
API还慢?
数组a["1","2","3"]
数组b["2","3","5"]
结果数组c[]
结果数组d[]
先初始化c和a一样,d和b一样。
d["2","3","5"]
从数组c中依次取元素,然后在数组d中找到一样的就删除掉,考虑重复,同时在c中删除。没找到就保留,找完后两个数组里剩下的都是对方数组里没有的
public class test {
public static void main(String[] args) {
HashMap map = new HashMap();
String a[] = {"1","2","3"};
String b[] = {"2","3","5"};
for(int i = 0; i < a.length; i++){
map.put(a[i], "");
}
for(int i = 0; i < b.length; i++){
if(map.get(b[i]) == null){
map.put(b[i], "");
}else{
map.remove(b[i]);
}
}
//结果输出:
Object[] object = map.keySet().toArray();
for(int i = 0; i < object.length; i++){
System.out.println(object[i]);
}
}}这个代码是我想出来的,提供参考,但是不知效率如何??
可那是最简单的方法吗?
我看还不如自己循环比较呢。