高分悬赏:Java语言怎么判断一个数字,每一位上的数字的和等于这个数字

高分悬赏:Java语言怎么判断一个数字,每一位上的数字的和等于这个数字

原理可以参考 https://blog.csdn.net/li5685918/article/details/50195691?utm_source=blogxgwz1

        // 如果相等返回true
        bool IsSame(int num)
        {
            int sum = 0;
            int temp = num;
            while (temp != 0)
            {
                sum += temp % 10;
                temp /= 10;
            }
            return sum == num;
        }

话说这个问题很奇怪啊,只有个位数才会满足这个条件吧?
那样的话:

        // 如果相等返回true
        bool IsSame(int num)
        {
            return sum >= 0 && sum < 10;
        }

这明显只有个位数才能满足条件的啊,十位之后权重就变了,怎么可能相等呢