classSolution{publicbooleanisHappy(int n){Set<Integer>record=newHashSet<>();while(n !=1&&!record.contains(n)){record.add(n);
n =getNextNumber(n);}return n ==1;}privatestaticintgetNextNumber(int n){int res =0;char[] s =Integer.toString(n).toCharArray();for(char c : s){int tmp =Integer.parseInt(String.valueOf(c));
res += tmp * tmp;}return res;}}