Khi tôi chạy đoạn mã sau, tôi sẽ mong đợi một stacktrace, nhưng thay vào đó nó trông giống như nó bỏ qua phần bị lỗi của giá trị của tôi, tại sao điều này xảy ra?Tại sao phân tích cú pháp SimpleDateFormat không mong manh bằng các chữ cái trong?
package test;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Test {
public static void main(final String[] args) {
final String format = "dd-MM-yyyy";
final String value = "07-02-201f";
Date date = null;
final SimpleDateFormat df = new SimpleDateFormat(format);
try {
df.setLenient(false);
date = df.parse(value.toString());
} catch (final ParseException e) {
e.printStackTrace();
}
System.out.println(df.format(date));
}
}
Đầu ra là:
07-02-0201