Mục lục
YearMonth object có tính chất immutable và đại diện cho kiểu dữ liệu bao gồm tháng và năm trong java.
Khởi tạo YearMonth
Để khởi tạo YearMonth object chúng có rất nhiều cách, hai trong số các method thường được sử dụng là YearMonth.now() và YearMonth.of().
YearMonth yearMonth = YearMonth.now(); YearMonth yearMonth1 yearMonth.of(2020,1);
Truy xuất giá trị của YearMonth
YearMonth có 2 giá trị tương ứng là năm và tháng, để lấy giá trị chúng ta có thể sử dụng các method:
getYear()
getYear() trả về giá trị của năm trong MonthYear object với kiểu dữ liệu int.
YearMonth yearMonth = YearMonth.now(); int year = yearMonth.getYear();
getMonthValue()
getMonthValue() trả về giá trị của tháng trong YearMonth object với kiẻu dữ liệu int.
YearMonth yearMonth = YearMonth.now(); int month = yearMonth.getMonthValue();
getMonth()
getMonth() trả về giá trị của tháng trong YearMonth object với kiểu dữ liệu Month.
YearMonth yearMonth = YearMonth.now(); Month month = yearMonth.getMonth();
get(TemporalField field)
get() Trả về giá trị của field được chỉ định trong tham số truyền vào.
YearMonth yearMonth = YearMonth.now(); int month = yearMonth.get(ChronoField.MONTH_OF_YEAR); int year = yearMonth.get(ChronoField.YEAR);
So sánh YearMonth trong java
Để so sánh YearMonth object trong java chúng ta có các method isBefore(), isAfter(), equals(), compareTo().
isBefore(YearMonth other)
isBefore() trả về true nếu YearMonth object hiện tại nhỏ hơn YearMonth object other từ tham số truyền vào.
YearMonth yearMonnth1 = YearMonth.of(2020, 1); YearMonth yearMonnth2 = YearMonth.of(2019, 5); YearMonth yearMonnth3 = YearMonth.of(2020, 3); System.out.println(yearMonnth1.isBefore(yearMonnth2)); // false System.out.println(yearMonnth1.isBefore(yearMonnth3)); // true System.out.println(yearMonnth1.isBefore(yearMonnth1)); // false
isAfter(YearMonth other)
isAfter() trả về true nếu YearMonth object hiện tại lớn hơn YearMonth object other từ tham số truyền vào.
YearMonth yearMonnth1 = YearMonth.of(2020, 1); YearMonth yearMonnth2 = YearMonth.of(2019, 5); YearMonth yearMonnth3 = YearMonth.of(2020, 3); System.out.println(yearMonnth1.isAfter(yearMonnth2)); // true System.out.println(yearMonnth1.isAfter(yearMonnth3)); // false System.out.println(yearMonnth1.isAfter(yearMonnth1)); // false
equals(YearMonth other)
equals() so sánh bằng với YearMonth object other từ tham số truyền vào.
YearMonth yearMonnth1 = YearMonth.of(2020, 1); YearMonth yearMonnth2 = YearMonth.of(2019, 5); YearMonth yearMonnth3 = YearMonth.of(2020, 1); System.out.println(yearMonnth1.equals(yearMonnth2)); // true System.out.println(yearMonnth1.equals(yearMonnth3)); // false System.out.println(yearMonnth1.equals(yearMonnth1)); // false
compareTo(YearMonth other)
Trả về 0 nếu YearMonth object hiện tại bằng với YearMonth object other, lớn hơn 0 nếu lớn hơn và nhỏ hơn 0 nếu bé hơn.
YearMonth yearMonnth1 = YearMonth.of(2020, 1); YearMonth yearMonnth2 = YearMonth.of(2020, 1); YearMonth yearMonnth3 = YearMonth.of(2020, 4); System.out.println(yearMonnth1.compareTo(yearMonnth2)); // 0 System.out.println(yearMonnth1.compareTo(yearMonnth3)); // -3 System.out.println(yearMonnth3.compareTo(yearMonnth1)); // 3