[英]Calling a method to print an array in single line
我一直試圖找出問題所在,但我似乎無法弄清楚。 基本上我的代碼會讓用戶輸入 N 大小的數組。 然后數組將填充從 1-100 生成的隨機數。 我有一個 printArray 方法,它在一行中打印一個數組的元素,我已經在一個固定數組上測試過它並且它可以工作,但是當我從生成的數組中調用它時,它給了我很多額外的 0。 這是代碼:
Scanner scan = new Scanner(System.in);
System.out.println("Size of array:"); //prompts the user enter size of array
int size = scan.nextInt();
int array[] = new int[size];
for (int i = 0; i < array.length; i++) {
array[i] = random.nextInt(100) + 1;
printArray(array);
這是顯示方法:
public static void printArray(int[] array) {
for (int i = 0; i < array.length; i++) {
if (i == 0) {
System.out.print(array[i]);
}
else if (i == array.length) {
System.out.print(array[i]);
}
else
System.out.print("," + array[i]);
}
}
當我運行代碼時,它將生成如下輸出:(以 3 為例)
要排序的數組大小? 3 36,0,036,68,036,68,75,它應該是 36,68,75。
您在一行中多次打印數組。
在第一次迭代中打印36,0,0
,在第二次迭代中打印36,68,0
並且僅在最后一次迭代中打印完全初始化的數組 - 36,68,75
。
移動printArray(array);
到循環結束。 您可能希望在printArray
的末尾添加一個println
。
for (int i = 0; i < array.length; i++) {
array[i] = random.nextInt(100) + 1;
}
printArray(array);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.