比较两个数组以获得java中缺少的数组和新数组

比较两个数组以获得java中缺少的数组和新数组,java,Java,我有一个数组,它显示数据库中选择的城市为cities=[“1”,“3”],其中1是孟买,3是班加罗尔 现在,在编辑时,用户取消选择孟买并选择金奈,新数组为[“2”,“3”] HTML: 孟买 钦奈 班加罗尔 德里 加尔各答 如何获取包含缺失值的数组(1)和新选择的数组(2),以便与所选数组进行比较时,如果缺失,则应更新,否则应插入数据库中您可以使用guava库获取集合之间的差异。 您可以做的是将两个数组转换为Set 新的HashSet(Arrays.asList(array)); 同样,对于

我有一个数组,它显示数据库中选择的城市为cities=[“1”,“3”],其中1是孟买,3是班加罗尔

现在,在编辑时,用户取消选择孟买并选择金奈,新数组为[“2”,“3”]

HTML:


孟买
钦奈
班加罗尔
德里
加尔各答

如何获取包含缺失值的数组(1)和新选择的数组(2),以便与所选数组进行比较时,如果缺失,则应更新,否则应插入数据库中

您可以使用guava库获取集合之间的差异。 您可以做的是将两个数组转换为Set

新的HashSet(Arrays.asList(array)); 同样,对于第二个数组也是如此

然后将集合传递给番石榴差分法

public static Sets.SetView(Set set1,Set set2)

。如果您不想使用任何第三方库,可以查看此问题

您可以使用番石榴库来获取两组之间的差异。 您可以做的是将两个数组转换为Set

新的HashSet(Arrays.asList(array)); 同样,对于第二个数组也是如此

然后将集合传递给番石榴差分法

public static Sets.SetView(Set set1,Set set2)

。如果您不想使用任何第三方库,可以查看此问题

您可以使用番石榴库来获取两组之间的差异。 您可以做的是将两个数组转换为Set

新的HashSet(Arrays.asList(array)); 同样,对于第二个数组也是如此

然后将集合传递给番石榴差分法

public static Sets.SetView(Set set1,Set set2)

。如果您不想使用任何第三方库,可以查看此问题

您可以使用番石榴库来获取两组之间的差异。 您可以做的是将两个数组转换为Set

新的HashSet(Arrays.asList(array)); 同样,对于第二个数组也是如此

然后将集合传递给番石榴差分法

public static Sets.SetView(Set set1,Set set2)

。如果您不想使用任何第三方库,可以查看此问题

公共类主目录{
公共静态void main(字符串[]args){
最后一个字符串[]arr1={“1”,“3”};
最后一个字符串[]arr2={“2”,“3”};
List missing=new ArrayList();//缺少的VAL
List have=new ArrayList();//公共VAL
List newV=new ArrayList();//新条目
Set aSet=newhashset(Arrays.asList(arr1));
Set bSet=newhashset(Arrays.asList(arr2));
for(字符串s:aSet){
如果(数据集包含){
有。添加(s);
}否则{
缺失。添加(s);
}
}
用于(字符串s:bSet){
如果(!aSet.包含){
新的。添加(s);
}
}
}
}
公共类主{
公共静态void main(字符串[]args){
最后一个字符串[]arr1={“1”,“3”};
最后一个字符串[]arr2={“2”,“3”};
List missing=new ArrayList();//缺少的VAL
List have=new ArrayList();//公共VAL
List newV=new ArrayList();//新条目
Set aSet=newhashset(Arrays.asList(arr1));
Set bSet=newhashset(Arrays.asList(arr2));
for(字符串s:aSet){
如果(数据集包含){
有。添加(s);
}否则{
缺失。添加(s);
}
}
用于(字符串s:bSet){
如果(!aSet.包含){
新的。添加(s);
}
}
}
}
公共类主{
公共静态void main(字符串[]args){
最后一个字符串[]arr1={“1”,“3”};
最后一个字符串[]arr2={“2”,“3”};
List missing=new ArrayList();//缺少的VAL
List have=new ArrayList();//公共VAL
List newV=new ArrayList();//新条目
Set aSet=newhashset(Arrays.asList(arr1));
Set bSet=newhashset(Arrays.asList(arr2));
for(字符串s:aSet){
如果(数据集包含){
有。添加(s);
}否则{
缺失。添加(s);
}
}
用于(字符串s:bSet){
如果(!aSet.包含){
新的。添加(s);
}
}
}
}
公共类主{
公共静态void main(字符串[]args){
最后一个字符串[]arr1={“1”,“3”};
最后一个字符串[]arr2={“2”,“3”};
List missing=new ArrayList();//缺少的VAL
List have=new ArrayList();//公共VAL
List newV=new ArrayList();//新条目
Set aSet=newhashset(Arrays.asList(arr1));
Set bSet=newhashset(Arrays.asList(arr2));
for(字符串s:aSet){
如果(数据集包含){
有。添加(s);
}否则{
缺失。添加(s);
}
}
用于(字符串s:bSet){
如果(!aSet.包含){
新的。添加(s);
}
}
}
}

像一个集合差异?是的,如果在一个数组中缺少该数组,并且在一个数组中新选择了该数组;如果缺少该数组,则应在数据库中更新,否则插入该集合差异?是的,如果在一个数组中缺少该数组,并且在一个数组中新选择了该数组;如果缺少该数组,则应在数据库中更新,否则插入该集合差异?是应在一个数组中缺失,在一个数组中新选择,如果缺失数组,则应在数据库中更新,否则插入类似于设置差异?是应在一个数组中缺失,在一个数组中新选择,如果缺失数组,则应在数据库中更新,否则插入能否仅使用列表告诉我不要设置,请帮助我单独使用列表,只需替换
setaset=newhashset(Arrays.asList(arr1))带有
列表aSet=Arrays.asList(arr1)但这不会删除重复项。你能告诉我只使用列表而不是集合吗?请帮助我单独使用列表只需替换
Set aSet=new HashSet(Arrays.asList(arr1))带有
列表aSet=Arrays.asList(arr1)但这不会删除重复项。你能告诉我只使用列表而不是集合吗?请帮助我单独使用列表只需替换
Set aSet=new HashSet(Arrays.asList(arr1))带有
列表aSet=Arrays.asList(arr1)<select name="cities">

<option value="1">Bombay</option>
<option value="2">Chennai</option>
<option value="3">Bangalore</option>
<option value="4">Delhi</option>
<option value="5">Calcutta</option>
</select>
public class Main {

public static void main(String[] args) {
  final String[] arr1 = {"1", "3"};
  final String[] arr2 = {"2", "3"};
  List<String> missing = new ArrayList<String>(); // the missing vals
  List<String> have = new ArrayList<String>();    // the common vals
  List<String> newV = new ArrayList<String>();    // the new entries

  Set<String> aSet = new HashSet<String>(Arrays.asList(arr1));
  Set<String> bSet = new HashSet<String>(Arrays.asList(arr2));

  for (String s : aSet) {
    if (bSet.contains(s)) {
      have.add(s);
    } else {
      missing.add(s);
    }
  }

  for (String s : bSet) {
    if (!aSet.contains(s)) {
      newV.add(s);
    }
  }
}
}