首先我们要知道水仙花数是什么,例如:153,个位的三次方,十位的三次方,百位的三次方分别是3^3,5^3,1^3加起来的和还是等于153。四位数的话就是4次方,以此类推。
for (int n = 1; n < 999999; n++) {
int count = 0;//判断数字的个数
int tmp = n;
while(tmp != 0) {
count++;
tmp = tmp/10;
}
tmp = n;
int sum = 0;
while(tmp != 0) {
sum+=Math.pow(tmp%10,count);//例如153%10=3,count也等于3
tmp = tmp/10;
}
if(sum == n) {
System.out.println(sum);
}
}
Math.pow(数字,几次方)是求次方的函数。
感觉还是非常通俗易懂的