这是打印水仙花数的程序,想定义一个数组装那些水仙数。数组长度在不知道到底有多少水仙花数的情况应该怎么定义,打印的时候那些装进去的0 怎么去掉
class Test0831Demo2 {
public static void main(String[] args) {
int[] arr =new int[10];
int num = getFlower(arr);
System.out.println("count = " + num);
print(arr);
}
public static int getFlower(int[] arr) {
int pos = 0;
int count = 0;
for (int i = 100; i <1000 ; i++ ) {
int a = i % 10; //个位
int b = i /10 % 10; //十位
int c = i / 100; //百位
if( i == a*a*a + b*b*b + c*c*c) {
arr[pos] = i;
pos++;
count++;
}
}
return count;
}
public static void print(int[] arr) {
System.out.print("[" );
for (int i = 0;i < arr.length ; i++) {
if (arr[i] != 0 ) {
System.out.print(arr[i] + "," );
} else {
System.out.print(arr[i] + "]" );
}
}
}
} |
|