此代码无法正常运行。我无法找到第二次运行循环的原因,它不会为firstName变量输入它只打印“输入名字:”。
import java.util.Scanner;
public class Test {
public static void main(String[]args){
String[] firstName = new String[30] ;
String[] secondName = new String [30];
int[] marksCourseWorkOne = new int[30];
int i;
Scanner sc = new Scanner(System.in);
for (i = 28; i < firstName.length; i++){
System.out.print("\nEnter First Name : ");
firstName[i] = sc.nextLine();
System.out.print("\nEnter Second Name : ");
secondName[i] = sc.nextLine();
System.out.print("\nEnter Marks For Course Work One : ");
marksCourseWorkOne[i] = sc.nextInt();
}
}
}
答案 0 :(得分:4)
首先,不要在nextLine
之后使用nextInt
,因为后者不会使用\n
字符,而是会被nextLine
吞噬},使其跳过你想要插入的实际输入。
其次,如果您是编译器,您认为i
是什么?你不会知道,因为程序员没有告诉你。你应该写int i = 28
(你确定它应该是28而不是0吗?)。
第三,你没有程序的入口点,所有这些都应该在main
方法(或任何其他方法)中。
解决方案:
i
。nextLine
之后立即添加另一个nextInt
以使用\n
。