Hỏi đáp
Chia sẻ kiến thức, cùng nhau phát triển
Mọi người xem qua cho em mấy dòng này vợi.. Sau khi nhập xong thì nó báo lỗi này ạ
Exception in thread "main" java.util.NoSuchElementException
Hàm Main
package thangVios.test;
import java.util.ArrayList;
import java.util.Scanner;
import thangVios.model.KhachHang;
public class TestKhachHang {
static Scanner scn = new Scanner(System.in);
static ArrayList<KhachHang> lstKhanhHang = new ArrayList<KhachHang>();
@SuppressWarnings("resource")
public static void menu() {
System.out.println("----- CHỨC NĂNG -----");
System.out.println("1. Nhập Thông Tin");
System.out.println("2. Xuất Thông Tin");
System.out.println("3. Tìm Kiếm Khách Hàng");
System.out.println("4. Sắp Xếp Khách Hàng");
System.out.println("5. Lưu Khách Hàng");
System.out.println("6. Đọc Khách Hàng");
System.out.println("7. Thống Kê");
System.out.println("8. Thoát");
System.out.println("Bạn chọn chức năng [1-8]: ");
int chucNang =new Scanner(System.in).nextInt();
switch (chucNang) {
case 1:
Nhap();
break;
case 2:
Xuat();
break;
default:
System.out.println("Bạn chỉ được nhập trong từ [1-8]");
break;
}
scn.close();
}
private static void Xuat() {
System.out.println("========================================");
System.out.println("Mã\tHọ và tên\t\tSố điện thoại");
for (KhachHang kh : lstKhanhHang) {
System.out.println(kh);
}
System.out.println("========================================");
}
@SuppressWarnings("resource")
private static void Nhap() {
KhachHang khachHang = new KhachHang();
System.out.println("Nhập Mã: ");
int ma = new Scanner(System.in).nextInt();
System.out.println("Nhập Tên: ");
String hoTen = new Scanner(System.in).nextLine();
System.out.println("Nhập Số điện thoại: ");
String soDienThoai = new Scanner(System.in).nextLine();
khachHang.setMa(ma);
khachHang.setHoTen(hoTen);
khachHang.setSoDienThoai(soDienThoai);
lstKhanhHang.add(khachHang);
}
public static void main(String[] args) {
while(true){
menu();
}
}
}
Class Khach Hang
package thangVios.model;
public class KhachHang {
private int ma;
private String hoTen;
private String soDienThoai;
public int getMa() {
return ma;
}
public void setMa(int ma) {
this.ma = ma;
}
public String getHoTen() {
return hoTen;
}
public void setHoTen(String hoTen) {
this.hoTen = hoTen;
}
public String getSoDienThoai() {
return soDienThoai;
}
public void setSoDienThoai(String soDienThoai) {
this.soDienThoai = soDienThoai;
}
public KhachHang(int ma, String hoTen, String soDienThoai) {
super();
this.ma = ma;
this.hoTen = hoTen;
this.soDienThoai = soDienThoai;
}
public KhachHang() {
super();
}
@Override
public String toString() {
return this.ma+"\t"+this.hoTen+"\t\t"+this.soDienThoai;
}
}
quên không nói với bạn phải bỏ cái scn.close() phải bỏ đi hoặc đưa xuống dưới hàm nhập
bỏ scn.close(); thử xem
mình vừa test xong, bạn có nhập đúng kiểu mà bạn định nghĩa k đấy
đưa hàm xuất xuống sau hàm nhập