Java Streams solution
```java\n public List> findDifference(int[] a1, int[] a2){\n        Set s1 = Arrays.stream(a1).boxed().collect(Collectors.toSet());\n        Set s2 = Arrays.str
```java\n public List<List<Integer>> findDifference(int[] a1, int[] a2){\n        Set<Integer> s1 = Arrays.stream(a1).boxed().collect(Collectors.toSet());\n        Set<Integer> s2 = Arrays.stream(a2).filter(n -> !s1.contains(n)).boxed().collect(Collectors.toSet());\n        Arrays.stream(a2).forEach(s1::remove);\n        return Arrays.asList(new ArrayList<>(s1), new ArrayList<>(s2));\n    }
['Java']