30/09/2018, 18:16

Bài tập nhập xuất java cơ bản

package classmethod;

import java.util.Scanner;

public class SinhVienTest {

	private static Scanner sc;
	public static void main(String[] args) {
		SinhVien.tiende();
		SinhVien sv1 = new SinhVien(14124321, "Nguyễn Văn Tèo", 6.75f, 9.55f);
		System.out.println(sv1);
		SinhVien sv2 = new SinhVien();
		NhapSV(sv2);
		System.out.println(sv2);
	}
	public static void NhapSV(SinhVien sv)
	{
		System.out.println("Nhập thông tin sinh viên: ");
		sv.setMssv(sc.nextInt());
		sv.setHoten(sc.nextLine());
		sv.setDiemLT(sc.nextFloat());
		sv.setDiemTH(sc.nextFloat());
		
	}
}

Mọi người xem giúp phương thức NhapSV(); sai chỗ nào mà nó báo lỗi java.lang.NullPointerException
Class SinhVien() của em chạy ok rồi nên em không show lên

Interns viết 20:31 ngày 30/09/2018

Đây là class SinhVien

package classmethod;

public class SinhVien {
	private int mssv;
	private String hoten;
	private float diemLT, diemTH;
	public int getMssv() {
		return mssv;
	}
	public void setMssv(int mssv) {
		this.mssv = mssv;
	}
	public String getHoten() {
		return hoten;
	}
	public void setHoten(String hoten) {
		this.hoten = hoten;
	}
	public float getDiemLT() {
		return diemLT;
	}
	public void setDiemLT(float diemLT) {
		this.diemLT = diemLT;
	}
	public float getDiemTH() {
		return diemTH;
	}
	public void setDiemTH(float diemTH) {
		this.diemTH = diemTH;
	}
	public SinhVien() {
		this.mssv = 0;
		this.hoten = "";
		this.diemLT = 0;
		this.diemTH = 0;
	}
	public SinhVien(int mssv, String hoten, float diemLT, float diemTH) {

		this.mssv = mssv;
		this.hoten = hoten;
		this.diemLT = diemLT;
		this.diemTH = diemTH;
	}
	float TinhDiemTB()
	{
		return (diemLT + diemTH)/2;
	}
	static void tiende()
	{
		System.out.println("\t\t=============THÔNG TIN SINH VIÊN===============");
		System.out.printf("%-10s %-30s %10s %10s %10s\n", "MSSV", "HỌ TÊN", "ĐIỂM LT", "ĐIỂM TH", "ĐIỂM TB");
	}
	@Override
	public String toString() {
		return String.format("%-10d %-30s %10.2f %10.2f %10.2f", mssv, hoten, diemLT, diemTH, TinhDiemTB());
	}
	
}
Cương Nguyễn viết 20:23 ngày 30/09/2018

biến sc của bạn đã khởi tạo đâu mà chẳng null
góp ý với bạn là tên hàm không nên bắt đầu bằng chữ hoa nhé, thay tên NhapSV -> nhapSV

Cương Nguyễn viết 20:19 ngày 30/09/2018

Thay đoạn:

private static Scanner sc;

thành:

private static Scanner = new Scanner(System.in);
Interns viết 20:30 ngày 30/09/2018

cảm ơn @CuongNguyen

Bài liên quan
0