这个可以使用ArrayList来解决,代码比较简洁。
首先判断ArrayList中是否已存在,如果存在,则删除。
删除时需要注意一下,如果直接传入当前数作为参数,它会按照下标进行删除,不会按照对象进行删除,可能会出现越界。
所以需要new Integer()。
public void FindNumsAppearOnce(int [] array,int num1[] , int num2[]) { if(array.length < 2){ return; } ArrayList<Integer> list = new ArrayList(); for(int i = 0;i<array.length;i++){ if(list.contains(array[i])){ list.remove(new Integer(array[i])); }else{ list.add(array[i]); } } num1[0] = list.get(0); num2[0] = list.get(1); }
```