我有下面的代码,用户必须在数组中输入5个值,并打印出相同的代码.
package Arrays;
import java.util.Scanner;
public class Arrays {
public static void main(String[] args) {
final int size=5;
Scanner input = new Scanner(System.in);
System.out.println("Enter the 5 number you want to be stored in an array");
int a[] =new int[size];
for(int i=0;i<a.length;i++){
a[i]=input.nextInt();
}
displayArray(a);
sumOfArray();
productOfArray();
smallAndLargeOfArray();
averageOfArray();
}
private static void displayArray(int arr[]) {
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i] + ' ');
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的意见:
1
2
3
4
5
Run Code Online (Sandbox Code Playgroud)
我得到的输出是:
33
34
35
36
37
Run Code Online (Sandbox Code Playgroud)
请让我知道我哪里出错了,我该如何解决这个问题.
更改
System.out.println(arr[i] + ' ');
Run Code Online (Sandbox Code Playgroud)
至
System.out.println(arr[i]);
Run Code Online (Sandbox Code Playgroud)
要么
System.out.println(arr[i] + " ");
Run Code Online (Sandbox Code Playgroud)
在打印时arr[i] + ' ',首先将表达式计算为a int和a 的加法char(空格字符的整数值,即32),然后才打印结果整数.因此,当以这种方式打印时,数组中的所有整数都会偏移32.
| 归档时间: |
|
| 查看次数: |
49 次 |
| 最近记录: |