已有258人关注
这代码无错误 运行时输入一个值后就出现错误。有什么问题吗这里面
发表在Java答疑区 2017-05-14
是否精华
版块置顶:

package test;
import java.util.Scanner;

public class J_ava8 {
    public static void main(String[] args) {
        Scanner in=new Scanner(System.in);
        Student []s=new Student[3];
        
        for(Student S:s){
            System.out.println("Please input the student's name:");
            S.setName(in.nextLine());
            System.out.println("Please input the number:");
            S.setNumber(in.nextLine());
            System.out.println("Please input the ChieseScore:");
            S.setChineseScore(in.nextInt());
            System.out.println("Please input the MathScore:");
            S.setMathScore(in.nextInt());
            System.out.println("Please input the EnglisnScore");
            S.setEnglishScore(in.nextInt());
            in.close();
        }
        for(Student S:s){
            S.ShowAllInfo();
        }
    }
    

}
class Student{
    private String Name;
    private String Number;
    private int ChineseScore;
    private int MathScore;
    private int EnglishScore;
    public void setName(String name){
        Name=name;
    }
    public void setNumber(String number) {
        Number = number;
    }
    public void setChineseScore(int chineseScore) {
        ChineseScore= chineseScore;
    }
    public void setMathScore(int mathScore) {
        MathScore = mathScore;
    }
    public void setEnglishScore(int englishScore) {
        EnglishScore = englishScore;
    }
    public void ShowAllInfo(){
        System.out.println("name:"+Name+"number"+Number+"chineseScore"+ChineseScore+"mathScore"+MathScore+"englishScore"+EnglishScore);
    }
    
}

分享到:
精彩评论 1
David
学分:914 LV7
TA的每日心情
最后的冲刺
2017-07-15 10:46:08
2017-05-15
沙发

虽然声明了数组的类型为Student,且数组的长度为3,但是并没有创建Student对象,这就是造成空指针异常的原因。解决方式如下:

import java.util.Scanner;

public class J_ava8 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        Student[] s = new Student[3];
        for (Student S : s) {
            S = new Student();
            System.out.println("Please input the student's name:");
            S.setName(in.next());
            System.out.println("Please input the number:");
            S.setNumber(in.next());
            System.out.println("Please input the ChieseScore:");
            S.setChineseScore(in.nextInt());
            System.out.println("Please input the MathScore:");
            S.setMathScore(in.nextInt());
            System.out.println("Please input the EnglisnScore");
            S.setEnglishScore(in.nextInt());
            S.ShowAllInfo();
        }
        in.close();
    }
}

class Student {
    private String Name;
    private String Number;
    private int ChineseScore;
    private int MathScore;
    private int EnglishScore;

    public void setName(String name) {
        this.Name = name;
    }

    public void setNumber(String number) {
        this.Number = number;
    }

    public void setChineseScore(int chineseScore) {
        this.ChineseScore = chineseScore;
    }

    public void setMathScore(int mathScore) {
        this.MathScore = mathScore;
    }

    public void setEnglishScore(int englishScore) {
        this.EnglishScore = englishScore;
    }

    public void ShowAllInfo() {
        System.out.println("name:" + Name + "number" + Number +

                    "chineseScore" + ChineseScore + "mathScore" + MathScore +

                    "englishScore" + EnglishScore);
    }
}

首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照