Input date from Scanner

Làm sao để nhập kiểu Date từ bàn phím được các bác. Ai làm rồi chỉ em với, em in biến importedDate ra null không à, em đã nhập đúng format rồi “09/09/2012”;

public  void input() throws ParseException {
		Scanner sc = new Scanner(System.in);
		SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
		try {
			System.out.println("Id thiết bị: ");
			id = sc.nextInt();
			System.out.println("Tên thiết bị:");
			name=sc.nextLine();
			System.out.println("Manufacture:");
			manufacture = sc.nextLine();
  // Đây ạ
		System.out.println("Ngày nhập kho:");
			String day=sc.nextLine();
		    Date importedDate = sdf.parse(day);


			
		} catch (Exception e) {
	
		}

Thế đã nhập đúng namemanufacture chưa?
Nếu cả 2 trường đó đúng thì còn 1 điều: vì sao các trường khác đều là toàn cục, chỉ riêng có importedDatecục bộ?

4 Likes


importedDate cũng là biến toàn cục luôn, test mọi thứ khác ok hết r bác

Kể cả em có sửa lại như thế này nó cũng vậy luôn ạ

Sao lại là static Date??? Bạn viết thế thì tạo đối tượng và nhập ngày thật vô dụng.
Vả lại không thấy được toàn bộ mã của bạn xử lý còn chỗ nào tác động làm thay đổi importedDate nữa không. Đảm bảo còn có chỗ gán importedDate = null, nếu không trực tiếp thì gián tiếp.

3 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?