快乐数202 123456789101112131415161718192021222324252627282930313233343536373839import java.util.Set;import java.util.HashSet;import java.util.Scanner;//快乐数202public class HappyNumber202 { public static void main(String[] args){ Scanner input = new Scanner(System.in); System.out.print("快乐数判断:"); if (new Solution().isHappy(input.nextInt())) { System.out.println("\n您输入的【是】快乐数!"); }else { System.out.println("\n很抱歉,您输入的【不是】快乐数。"); } }}class Solution { public boolean isHappy(int n) { Set<Integer> set = new HashSet<>(); //前面是‘是’的退出条件,后面是‘不是’的退出条件 while(n != 1 && !set.contains(n)){ set.add(n); //n变化 n = newNum(n); } return n == 1; } private int newNum(int origalNum){ int res = 0; while(origalNum > 0){ int temp = origalNum % 10; res += temp * temp; origalNum /= 10; } return res; }}