【发布时间】:2017-04-18 13:45:07
【问题描述】:
我需要生成 25 个随机数,然后根据它们是奇数还是偶数,将它们分成两个数组。这是我的预期输出:
偶数:40 10 70 58 20 18 74 44 14 54 50 42
奇数:21 75 29 69 7 41 33 35 21 13 93 73 33
这是我目前所拥有的:
public static void main(String[] args) {
Scanner input = new Scanner(System.in).useDelimiter("\n");
int[] randomNumbers = new int[25];
int[] evenNumbers = new int[25];
int[] oddNumbers = new int[25];
int k = 0, l = 0;
for (int i= 0; i< randomNumbers.length; i++) {
randomNumbers[i] = (int) (Math.random() * 99);
}
for (int i = 0; i < 25; i++) {
if (randomNumbers[i] % 2 == 0) {
evenNumbers[k] = randomNumbers[i];
k++;
} else {
oddNumbers[l] = randomNumbers[i];
l++;
}
}System.out.print("Even: ");
for (int i = 0; i< evenNumbers.length; i++) {
System.out.print(evenNumbers[i] + " ");
}System.out.println("");
System.out.print("Odd: ");
for (int i= 0; i < oddNumbers.length; i++) {
System.out.print(oddNumbers[i] + " ");
}
}
}
这是我的实际输出:
偶数:40 10 70 58 20 18 74 44 14 54 50 42 0 0 0 0 0 0 0 0 0 0 0 0 0
奇数:21 75 29 69 7 41 33 35 21 13 93 73 33 0 0 0 0 0 0 0 0 0 0 0 0
我想知道如何去除每个输出末尾的零。
【问题讨论】:
-
零在那里是因为您创建了一个由 25 个整数组成的数组,该数组初始化为零。您可以使用
ArrayList来避免这种情况(这是内部调整大小的数组)。或者有两个计数器来跟踪您在奇数/偶数数组中插入了多少元素。 -
stackoverflow.com/questions/5061721/…创建动态arrayList