classSolution{publicint[]intersection(int[] nums1,int[] nums2){Set<Integer> set =newHashSet<>();Set<Integer> inter =newHashSet<>();for(int i : nums1) set.add(i);for(int i : nums2){if(set.contains(i)) inter.add(i);}return inter.stream().mapToInt(x -> x).toArray();}}
classSolution{publicbooleanisHappy(int n){Set<Integer> set =newHashSet<>();while(true){if(n ==1)returntrue;if(set.contains(n))returnfalse;else{
set.add(n);
n =getSquareSum(n);}}}privateintgetSquareSum(int n){int sum =0;while(n >0){int res = n %10;
sum += res * res;
n/=10;}return sum;}}