我的意图是用不同的方法在对象中用数字和字符串填充不同的数组。为什么我得到空阵列?
但似乎我有一个问题。
下面是代码:
package arrays;
import java.util.Scanner;
public class Notendurchschnitt {
public static void main(String[] args) {
NotenManager noten = new NotenManager();
noten.eingabe();
noten.ausgabeDesArrays();
}
}
class NotenManager {
Scanner scanner = new Scanner(System.in);
double[] notenArray;
String[] vornamen;
String[] nachnamen;
void eingabe() {
System.out.print("Wieviele Personen haben\nan der Kausur teilgenommen? ");
double[] notenArray=new double[scanner.nextInt()];
String[] vornamen=new String[notenArray.length];
String[] nachnamen=new String[notenArray.length];
scanner.nextLine();
for (int i=0;i<notenArray.length;i++) {
System.out.printf("%d.Teilnehmer\nVorname: ",i+1);
vornamen[i]=scanner.nextLine();
System.out.print("Nachname: ");
nachnamen[i]=scanner.nextLine();
System.out.print("Note: ");
scanner.nextLine();
}
}
void ausgabeDesArrays() {
double ergebnis=0;
System.out.println("Zahl der Eintraege:."+notenArray[0]+".");
}
}
编译器给我一个因为在该方法中ausgabe()
阵列notenanArray
未填充有被用于在该方法eingabe()
阵列notenArray
创建的值。
为什么数组中填充了空值,尽管它是一个实例变量?
澄清:第二个声明(在'eingabe'范围内)“覆盖”了全局声明 - 最终得到一个局部变量,其范围仅限于其创建的函数。 – Floris
ARRRGHHH!什么是fuc ....错误!!!!!!谢谢 :-))) – user3133542