先生,我正在尝试打印阵列的第0个元素,但我不能.这是我的代码
import java.util.Scanner;
public class prog3
{
public static void main (String[] args){
Scanner input = new Scanner(System.in);
int size = input.nextInt();
String arr[] = new String[size];
for (int i=0; i<size; i++){
arr[i]= input.nextLine();
}
System.out.print(arr[0]);
}
}
Run Code Online (Sandbox Code Playgroud)
当我试图打印arr[0]其返回空白但当我打印arr[1]它时返回第0个元素值.你能帮我找到我的错误吗?
更改
arr[i]= input.nextLine();
Run Code Online (Sandbox Code Playgroud)
至
arr[i]= input.next();
Run Code Online (Sandbox Code Playgroud)
它的工作原理.这是因为nextLine()读取空格然后看起来像是arr[0]空的.你可以看到这个,因为如果size是3,你只能输入两次.有关扫描仪的更多信息,请参见http://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html
试试这个伙伴:
input.nextLine(); // gobble the newline
for (int i = 0; i < size; i++) {
arr[i] = input.nextLine();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
140 次 |
| 最近记录: |