Tôi đã thử một số mã trong Java 8 (1.8.0_77) và Java 9 (Java HotSpot (TM) 64-Bit Server VM (build 9 + 181, chế độ hỗn hợp))JDK dateformater phân tích DayOfWeek bằng tiếng Đức, java8 vs java9
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("eee", Locale.GERMAN);
DayOfWeek mo = dtf.parse("Mo", DayOfWeek::from);
System.out.println("mo = " + mo);
tôi không quá quen thuộc với các chi tiết của những lớp học, nhưng trong Java 8 công trình này, in ấn:
mo = thứ hai
trong Java 9, tuy nhiên nó không thành công
Exception in thread "main" java.time.format.DateTimeParseException: Văn bản 'Mo' không thể phân tích tại index 0 tại java.base/java.time.format.DateTimeFormatter.parseResolved0 (DateTimeFormatter.java : 1988) tại java.base/java.time.format.DateTimeFormatter.parse (DateTimeFormatter.java:1890) tại day.main (day.java:10)
Bất kỳ ý tưởng, là này tái sản xuất?
như vậy, khi formating: sử dụng mã này:
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("eee", Locale.GERMAN);
String format = dtf.format(DayOfWeek.MONDAY);
System.out.println("format = " + format);
jdk1.8.0-77:
format = Mo
jdk-9 (xây dựng 9 + 181)
forma t = Mo.
https://ideone.com/6t60j1 Bạn có chắc chắn về java-8 không? –
tôi cũng sử dụng 1.8.0_77. có thể sử dụng phiên bản này trên trang web này không? – user140547
Ideone đang cung cấp một số phiên bản bạn không kiểm soát được. (và dịch vụ đã thực sự tốt đẹp IMHO) –