求java代码,关于两个list数组比较的,并且把不同的部分输出打印

如何比较两个list数组,并且把不同的部分输出打印
第一个数组,是从数据库中查到的:while(rs.next()){
nsrsbhName.put(rs.getString("b"),rs.getString("a"));
}

nsrsbhList.add(nsrsbhName); //将map内容放入到list中
for (Map m : nsrsbhList){
for (String k : m.keySet())
{
System.out.println(k + " " + m.get(k));
}
}
显示的效果是:12201 济南 12202 青岛
第二个数组是自己定义的:
String[] arr={"12201","12202","12203","12204","12205","12206","12207","12208","12209","12210","12211","12212","12213","12214","12215","12216","12217"};
比较这两个数组,将不同的部分输出打印

先排序一下,删掉相同元素得到两条元素唯一的list(你的数据没有相同的,可以不处理);
然后比较两个集合,删掉相同元素,你是数组就将数组元素置“0”,打印两条数组就可以了。

或者将两条数组加到同一个集合中,排序删掉同一元素。剩下就是不同的

http://blog.csdn.net/shenshen123jun/article/details/9073967

可以不可以将两个数组存放在map中,然后判断key的值来判断,打印不同的项