String oldStr[] = {"A","B","C"};
String newStr[] = {"B","C","D","E"};java实现找出相对于oldStr来说,新增了哪个字符串,删除了哪个字符串
期望输出结果
新增:“D”和“E”
删除:“A”
String newStr[] = {"B","C","D","E"};java实现找出相对于oldStr来说,新增了哪个字符串,删除了哪个字符串
期望输出结果
新增:“D”和“E”
删除:“A”
String oldStr[] = {"A","B","C"};
String newStr[] = {"B","C","D","E"};
List<String> oldStrList = new ArrayList<String>(Arrays.asList(oldStr));
List<String> newStrList = new ArrayList<String>(Arrays.asList(newStr));
oldStrList.removeAll(newStrList);
System.out.println(oldStrList);
oldStrList = new ArrayList<String>(Arrays.asList(oldStr));
newStrList = new ArrayList<String>(Arrays.asList(newStr));
newStrList.removeAll(oldStrList);
System.out.println(newStrList);
并集减去oldStr 剩下的就是新增的
并集减去onewStr 剩下的就是删除的
import java.util.*;
public class Test
{
public static void main(String[] args)
{
String oldStr[] = {"A","B","C"};
String newStr[] = {"B","C","D","E"};
ArrayList al=new ArrayList();
ArrayList bl=new ArrayList();
ArrayList cl=new ArrayList();
al=Test.merge(oldStr,newStr);
System.out.println ("-----------------------");
System.out.println ("并集是:");
Test.prAL(al);
bl=Test.sub(al,oldStr);
System.out.println ("-----------------------");
System.out.println ("新增的是:");
Test.prAL(bl);
al=Test.merge(oldStr,newStr);
cl=Test.sub(al,newStr);
System.out.println ("-----------------------");
System.out.println ("删除的是:");
Test.prAL(cl);
}
public static ArrayList merge(String[] a,String[] b )
{
ArrayList al=new ArrayList();
for(int i=0;i<a.length;i++)
al.add(a[i]);
for(int i=0;i<b.length;i++)
if(al.indexOf(b[i])==-1)
al.add(b[i]);
return al; }
public static ArrayList sub(ArrayList xl,String[] b )
{ for(int i=0;i<b.length;i++)
if(xl.indexOf(b[i])!=-1)
xl.remove(b[i]);
return xl; }
public static void prAL(ArrayList al)
{
System.out.print(al.toString()); }
}
import java.util.*;
public class Test
{
public static void main(String[] args)
{
String oldStr[][] = {{"A","B","C"},{"F","H"}};
String newStr[][] = {{"B","C","D","E"},{"i","j"}};
ArrayList al=new ArrayList();
ArrayList bl=new ArrayList();
ArrayList cl=new ArrayList();
al=Test.merge(oldStr,newStr);
System.out.println ("-----------------------");
System.out.println ("并集是:");
Test.prAL(al);
bl=Test.sub(al,oldStr);
System.out.println ("-----------------------");
System.out.println ("新增的是:");
Test.prAL(bl);
al=Test.merge(oldStr,newStr);
cl=Test.sub(al,newStr);
System.out.println ("-----------------------");
System.out.println ("删除的是:");
Test.prAL(cl);
}
public static ArrayList merge(String[][] a,String[][] b )
{
ArrayList al=new ArrayList();
for(int i=0;i<a.length;i++)
for(int j=0;j<a[i].length;j++)
al.add(a[i][j]);
for(int i=0;i<b.length;i++)
for(int j=0;j<b[i].length;j++)
if(al.indexOf(b[i][j])==-1)
al.add(b[i][j]);
return al; }
public static ArrayList sub(ArrayList xl,String[][] b )
{ for(int i=0;i<b.length;i++)
for(int j=0;j<b[i].length;j++)
if(xl.indexOf(b[i][j])!=-1)
xl.remove(b[i][j]);
return xl; }
public static void prAL(ArrayList al)
{
System.out.print(al.toString()); }
}