30/09/2018, 22:05

Bị trôi phím khi nhập Chuỗi trong Java

e có bài code như thế này, các bác xem giúp e đoạn nhập dữ liệu trong hàm init(), khi e nhập số sinh viên xong rồi thì dòng nhập mã sinh viên không nhập được (bị bỏ qua), nó nhắt luôn xuống dòng nhập họ tên.
các bác xử lí giúp e với

package buoi_6;

import java.util.Scanner;

class SinhVien {
	private String maSV;
	private String hoTen;
	private int diem;
	
	public void setMaSV(String maSV){
		this.maSV = maSV;
	}
	
	public void setHoTen(String hoTen){
		this.hoTen = hoTen;
	}
	
	public void setDiem(int diem){
		this.diem = diem;
	}
	
	public String getMaSV(){
		return this.maSV;
	}
	
	public String getHoTen(){
		return this.hoTen;
	}
	
	public int getDiem(){
		return this.diem;
	}
	
}

public class QuanLi {
	static final int max = 100;
	static int n;
	static SinhVien [] a = new SinhVien [max];
	
	
	public static void init(){
		Scanner sc = new Scanner(System.in);

		SinhVien sv = new SinhVien();
		
		System.out.println("Nhap so sinh vien: ");
		n = sc.nextInt();
		
		for(int i = 1; i <= n; i++){
			System.out.println("Sinh vien thu " + i + " : ");
			
			System.out.println("Nhap ma sinh vien: ");
			
			sv.setMaSV(sc.nextLine());
			
			System.out.println("Nhap ho ten: ");
			sv.setHoTen(sc.nextLine());
			
			System.out.println("Nhap diem: ");
			sv.setDiem(sc.nextInt());
		}
	}
	
	public static void result(){
		SinhVien sv = new SinhVien();
		for(int i = 1; i <= n; i++){
			System.out.println("Ho ten: " + sv.getMaSV());
			
			System.out.println("Ma sinh vien: " + sv.getHoTen());
			
			System.out.println("Diem: " + sv.getDiem());
			
		}
	}
	
	public static void main(String[] args) {
		init();
		result();
	}
}
bongtoi viết 00:15 ngày 01/10/2018

@ltd a xem giúp e bài này với ạ

*grab popcorn* viết 00:07 ngày 01/10/2018

Thay toàn bộ nextInt() = Integer.parseInt(sc.nextLine()); là sẽ ko bị trôi.

bongtoi viết 00:19 ngày 01/10/2018

e cảm ơn a/c nhiều nhé, e làm theo được rồi

Bài liên quan
0