1. public boolean isHappy(int n) {
    2. HashSet<Integer> set = new HashSet<>();
    3. while (n != 1){
    4. int sum = 0;
    5. while (n != 0) {
    6. sum +=Math.pow(n % 10, 2);
    7. n /= 10;
    8. }
    9. n = sum;
    10. //防止无限循环
    11. if (set.contains(n)) {
    12. break;
    13. }
    14. set.add(n);
    15. }
    16. return n == 1;
    17. }