我在这个程序中得到NullPointerException
。我相信在声明Object Array时存在一些问题。
import java.util.Scanner;
class One
{
public static void main(String args[])
{
Scanner key = new Scanner(System.in);
two[] obj = new two[3];
for (int i = 0; i < 3; i++) {
obj[i].roll = key.nextInt();
obj[i].name = key.nextLine();
obj[i].grade = key.nextLine();
}
for (int i = 0; i < 3; i++) {
System.out.println(obj[i].roll + " " + obj[i].name + " " + obj[i].grade);
}
}
}
class Two
{
int roll;
String name, grade;
}
答案 0 :(得分:3)
您忘记初始化数组中的对象。如果没有此初始化,obj[i]
将包含空引用。
two[] obj=new two[3];
for(int i=0;i<3;i++)
{
obj[i] = new two();
obj[i].roll=key.nextInt();
obj[i].name=key.nextLine();
obj[i].grade=key.nextLine();
}
答案 1 :(得分:0)
数组中的对象未初始化。
致电obj[i] = new Two();
作为你在第一个for循环中的第一个声明。
顺便说一句:&#34;两个&#34;必须是大写的&#34;两个&#34;