gpt4 book ai didi

java - 数组未完整打印

转载 作者:行者123 更新时间:2023-12-01 18:06:02 25 4
gpt4 key购买 nike

我在完整打印数组时遇到问题。该代码被设置为打印随机数序列,并且随机数序列的数量(1-12)旨在来自用户输入。但是,我无法让它打印超过第一个随机数。我之前设法打印了整个序列,但由于这是一个作业并且我必须使用数组,所以我的第一个方法不再有效。

import java.util.Scanner;
import java.util.Arrays;

public class Test4 {
public static void main(String[] args) {
int randomNumber;
int[] allNumbers = new int[12];
Scanner keyboard = new Scanner(System.in);

for (int i = 1; i <= allNumbers.length; i++) {
allNumbers[i] = (int) (Math.random() * 999 + 1);
System.out.print("How many random numbers? ");
randomNumber = keyboard.nextInt();
System.out.print("\n" + "Random numbers: ");
System.out.print(allNumbers[i] + " ");
{
System.out.print("\n");
System.out.print("\n" + "Even numbers: " + (allNumbers[i] % 2 == 0));
System.out.print("\n" + "Odd numbers: ");
break;
}
}
}
}

新代码:正在进行中...

*更新2:添加了对keyboard.nextint 的限制。

在我尝试打印奇数和偶数的部分遇到“字符串文字未用双引号封闭”错误。

*Update3:修复了上述错误(由打字错误引起)。

新问题:排序后的数字(奇数/偶数)显示出来,但格式错误。他们的表现是这样的:奇数:475奇数:123偶数:62偶数:680偶数:870奇数:457ETC。我想:偶数:数数数数数奇数:数数数数

还希望在那里放置一个计数器来计算偶数/奇数随机数的数量 - 有没有一种方法可以在一次打印中打印所有这些?或者我首先必须为计数器创建一个 system.out.print 然后是一个系统输出 printf

更新的代码:

import java.util.Scanner;
import java.util.Arrays;
public class Test7 {


public static void main(String[] args) {

Scanner keyboard = new Scanner(System.in);
System.out.print("How many random numbers?: ");
int size = keyboard.nextInt();
System.out.print("\n");
while (size>12 || size<1);

int[] randNum = new int[size];

for(int i = 0 ; i < randNum.length ; i++)
randNum[i] = (int)(Math.random() * 999 + 1);
System.out.println("Random numbers: " + Arrays.toString(randNum).replace("]", "").replace(",", "").replace("[", "") + "\n");


for(int i = 0 ; i < randNum.length ; i++)
if(randNum[i] % 2 == 0) {
System.out.print("\r" + "Even numbers: ");
System.out.print(randNum[i] + " ");
} else {
System.out.print("\r" + "Odd numbers: ");
System.out.print(randNum[i] + " ");
}


}}

最佳答案

Java 数组使用从零开始的索引。

for(int i = 0; i < allNumbers.length ; i++)

因此,for循环应该如上。否则,您可能应该得到 ArrayIndexOutOfBoundException。

此外,您在 for 循环中包含的 break 语句会导致循环不会运行多次。您应该始终使用带有条件的 break 语句(例如:在 if block 内)

关于java - 数组未完整打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36388915/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com