Hal*_*anf 0 java arrays for-loop nullpointerexception
这是我的主要代码:
Scanner input= new Scanner(System.in);
Student[] starray=new Student[5];
for (int i=0; i<3; i++)
{
System.out.println("enter:");
starray[i].name=input.next();
System.out.println("enter:");
starray[i].family=input.next();
System.out.println("enter:");
starray[i].sid=input.nextInt();
}
for(int i=0; i<3; i++)
System.out.println(starray[i].name);
Run Code Online (Sandbox Code Playgroud)
我有一节课:
String name,family;
Integer sid;
Student(){
name="kh";
family="kh";
sid=0;}
Run Code Online (Sandbox Code Playgroud)
当我运行它时有以下异常:在testcodes.TestCodes.main(TestCodes.java:19)的线程"main"java.lang.NullPointerException中的异常Java结果:1
Student[] starray = new Student[5];只创造容器.该容器中的每个元素都将是null.
您需要依次创建每个.在你的循环中,考虑一下
starray[i] = new Student();
更好的是,为a创建一个强类型构造函数Student,将名称等作为参数.这有助于提高程序的稳定性.
| 归档时间: |
|
| 查看次数: |
277 次 |
| 最近记录: |