I am interested in printing all numbers that do not have a match in an array.
Example: 1,3,4,5,3,4,5,5,6
result 1,5,6
Please review my solution bellow. What would be a much better way for this? Any input on how to improve this is welcome
public static Integer[] outputSinglePair(Integer[] numbers){
if(numbers == null)
throw new IllegalArgumentException();
Arrays.sort(numbers);
ArrayList<Integer> result = new ArrayList<Integer>();
for(int i = 0; i < numbers.length - 1; ){
if(numbers[i] != numbers[i + 1]){
result.add(numbers[i]);
i++;
}
else
i+=2;
if(i == numbers.length - 1)result.add(numbers[i]);//we hit last element of array which is unpaired
}
return result.toArray(new Integer[0]);
}