Mục lục
MonthDay class đại diện cho kiểu ngày tháng trong java.
Note: MonthDay là immutable.
Khởi tạo MonthDay
Để khởi tạo MonthDay object chúng có rất nhiều cách, hai trong số các method thường được sử dụng là MonthDay.now() và MonthDay.of().
MonthDay monthDay = MonthDay.now(); MonthDay monthDay1 = monthDay.of(1,1 );
Truy xuất giá trị của MonthDay
MonthDay có 2 giá trị tương ứng là ngày và tháng, để lấy giá trị chúng ta có thể sử dụng các method:
getDayOfMonth()
getDayOfMonth() trả về giá trị của ngày kiểu int.
MonthDay monthDay = monthDay.of(4,1 ); int day = monthDay.getDayOfMonth(); // 1
getMonthValue()
getMonthValue() trả về giá trị của tháng kiểu int.
MonthDay monthDay = MonthDay.of(4, 1); int month = monthDay.getMonthValue(); // 4
getMonth()
getMonth() trả về giá trị của tháng kiểu Month.
MonthDay monthDay = MonthDay.of(4, 1); Month month = monthDay.getMonth(); // APRIL
get(TemporalField field)
Trả về giá trị của field tương ứng với tham số truyền vào.
MonthDay monthDay = MonthDay.of(4, 1); int month = monthDay.get(ChronoField.MONTH_OF_YEAR); // 4 int day = monthDay.get(ChronoField.DAY_OF_MONTH); // 1
So sánh MonthDay trong java
Để so sánh MonthDay object trong java chúng ta có các method isBefore(), isAfter(), equals(), compareTo().
isBefore(MonthDay other)
isBefore() trả về true nếu MonthDay object hiện tại nhỏ hơn MonthDay object other từ tham số truyền vào.
MonthDay monthDay1 = MonthDay.of(4, 1); MonthDay monthDay2 = MonthDay.of(3, 5); MonthDay monthDay3 = MonthDay.of(4, 20); System.out.println(monthDay1.isBefore(monthDay2)); // false System.out.println(monthDay1.isBefore(monthDay3)); // true System.out.println(monthDay1.isBefore(monthDay1)); // false
isAfter(MonthDay other)
isAfter() trả về true nếu MonthDay object hiện tại lớn hơn MonthDay object other từ tham số truyền vào.
MonthDay monthDay1 = MonthDay.of(4, 1); MonthDay monthDay2 = MonthDay.of(3, 5); MonthDay monthDay3 = MonthDay.of(4, 20); System.out.println(monthDay1.isAfter(monthDay2)); // true System.out.println(monthDay1.isAfter(monthDay3)); // false System.out.println(monthDay1.isAfter(monthDay1)); // false
equals(MonthDay other)
equals() so sánh bằng với MonthDay object other từ tham số truyền vào.
MonthDay monthDay1 = MonthDay.of(4, 1); MonthDay monthDay2 = MonthDay.of(4, 1); MonthDay monthDay3 = MonthDay.of(4, 20); System.out.println(monthDay1.equals(monthDay2)); // true System.out.println(monthDay1.equals(monthDay3)); // false
compareTo(MonthDay other)
Trả về 0 nếu MonthDay object hiện tại bằng với MonthDay object other, lớn hơn 0 nếu lớn hơn và nhỏ hơn 0 nếu bé hơn.
MonthDay monthDay1 = MonthDay.of(4, 1); MonthDay monthDay2 = MonthDay.of(4, 1); MonthDay monthDay3 = MonthDay.of(4, 20); System.out.println(monthDay1.compareTo(monthDay3)); // -19 System.out.println(monthDay1.compareTo(monthDay2)); // 0 System.out.println(monthDay3.compareTo(monthDay1)); // 19