在继续开发这个应用程序之前,我意识到如果我按照请求将方法拆分为方法,我就无法将输入转移到变量n中。 这导致grade()部分,而不是触发所有for循环。 我试图在数组上放一个固定值(即3而不是n)并且它有效,所以这意味着在输入输入后变量n仍然为0。 调整应用程序以在main方法中运行all工作正常,但我注意到我必须在main方法中声明变量 我要做什么将数据传递给变量n?非常感谢!
//code removed
答案 0 :(得分:0)
您已全局初始化name[]
数组。
那么,在display函数中,当您在2到25之间输入n
的值时,它会被设置为全局变量n
。但是,您的字符串数组name
已经初始化。即它的大小为零。在显示功能更新n
后,它不会更新为n
大小。
在将name[]
值放入显示功能后,您需要包含一行来初始化数组n
。
n = in.nextInt();
while ((n < 2) || (n > 25)) {
System.out
.println(">>>>>>>>>>>>>>>> Please enter a number between 2 and 25 <<<<<<<<<<<<<<<<");
n = in.nextInt();
}
name = new String[n];