LocalTime 비교 방법
두 개의 LocalTime 객체를 비교하기 위해 다음 4가지 메서드를 사용합니다.
4가지 메서드
- CompareTo(): 이 메서드를 호출하는 LocalTime 객체와 매개변수로 전달된 LocalTime 객체를 비교합니다.
- isBefore(): 이 메서드를 호출하는 LocalTime 객체가 매개변수로 전달된 LocalTime 객체보다 이전 시간인지 체크합니다.
- isAfter(): 이 메서드를 호출하는 LocalTime 객체가 매개변수로 전달된 LocalTime 객체보다 이후 날짜인지 체크합니다.
- equals(): 이 메서드를 호출하는 LocalTime 객체와 매개변수로 전달된 LocalTime 객체가 동일한지 비교합니다.
compareTo 메서드
LocalTime 클래스에서 제공하는 compareTo() 메서드는 이 메서드를 호출하는 LocalTime 객체와 매개변수로 전달된 LocalTime 객체를 비교하며, 정수 값을 반환합니다.
반환 결과
- 두 객체의 시간이 동일하면 0을 반환합니다.
- compareTo() 메서드를 호출한 LocalTime 객체가 이후 날짜인 경우 양수 값을 반환합니다.
- compareTo() 메서드를 호출한 LocalTime 객체가 이전 날짜인 경우 양수 값을 반환합니다.
public static void main(String args[]) {
LocalTime localTime1 = LocalTime.of(19, 50, 05);
LocalTime localTime2 = LocalTime.of(19, 50, 05);
LocalTime beforeLocalTime = LocalTime.of(15, 25, 45);
LocalTime afterLocalTime = LocalTime.of(21, 50,50);
int comPareToResult1 = localTime1.compareTo(localTime2);
System.out.println("localTime1(" + localTime1 +
")와 localTime2(" + localTime2 +
") 비교 결과: " + comPareToResult1);
int comPareToResult2 = localTime1.compareTo(beforeLocalTime);
System.out.println("localTime1(" + localTime1 +
")와 beforeLocalTime(" + beforeLocalTime +
") 비교 결과: " + comPareToResult2);
int comPareToResult3 = localTime1.compareTo(afterLocalTime);
System.out.println("localTime1(" + localTime1 +
")와 afterLocalTime(" + afterLocalTime +
") 비교 결과: " + comPareToResult3);
}
[실행 결과]
localTime1(19:50:05)와 localTime2(19:50:05) 비교 결과: 0
localTime1(19:50:05)와 beforeLocalTime(15:25:45) 비교 결과: 1
localTime1(19:50:05)와 afterLocalTime(21:50:50) 비교 결과: -1
isBefore 메서드
LocalTime 클래스에서 제공하는 isBefore() 메서드는 이 메서드를 호출하는 LocalTime 객체가 매개변수로 전달된 LocalTime 객체보다 이전 날짜인지 체크합니다.
반환 결과
- isBefore() 메서드를 호출한 LocalTime 객체가 이전 날짜인 경우 true를 반환합니다.
- isBefore() 메서드를 호출한 LocalTime 객체가 이후 날짜 또는 동일한 날짜인 경우 false를 반환합니다.
public static void main(String args[]) {
LocalTime localTime1 = LocalTime.of(19, 50, 05);
LocalTime localTime2 = LocalTime.of(19, 50, 05);
LocalTime beforeLocalTime = LocalTime.of(15, 25, 45);
LocalTime afterLocalTime = LocalTime.of(21, 50,50);
boolean isBeforeResult1 = localTime1.isBefore(localTime2);
System.out.println("localTime1(" + localTime1 +
")가 localTime2(" + localTime2 +
")의 이전 날짜인가? " + isBeforeResult1);
boolean isBeforeResult2 = localTime1.isBefore(beforeLocalTime);
System.out.println("localTime1(" + localTime1 +
")가 beforeLocalTime(" + beforeLocalTime +
")의 이전 날짜인가? " + isBeforeResult2);
boolean isBeforeResult3 = localTime1.isBefore(afterLocalTime);
System.out.println("localTime1(" + localTime1 +
")가 afterLocalTime(" + afterLocalTime +
")의 이전 날짜인가? " + isBeforeResult3);
}
[실행 결과]
localTime1(19:50:05)가 localTime2(19:50:05)의 이전 날짜인가? false
localTime1(19:50:05)가 beforeLocalTime(15:25:45)의 이전 날짜인가? false
localTime1(19:50:05)가 afterLocalTime(21:50:50)의 이전 날짜인가? true
isAfter 메서드
LocalTime 클래스에서 제공하는 isAfter() 메서드는 이 메서드를 호출하는 LocalTime 객체가 매개변수로 전달된 LocalTime 객체보다 이후 날짜인지 체크합니다.
반환 결과
- isAfter() 메서드를 호출한 LocalTime 객체가 이후 날짜인 경우 true를 반환합니다.
- isAfter() 메서드를 호출한 LocalTime 객체가 이전 날짜 또는 동일한 날짜인 경우 false를 반환합니다.
public static void main(String args[]) {
LocalTime localTime1 = LocalTime.of(19, 50, 05);
LocalTime localTime2 = LocalTime.of(19, 50, 05);
LocalTime beforeLocalTime = LocalTime.of(15, 25, 45);
LocalTime afterLocalTime = LocalTime.of(21, 50,50);
boolean isAfterResult1 = localTime1.isBefore(localTime2);
System.out.println("localTime1(" + localTime1 +
")가 localTime2(" + localTime2 +
")의 이후 날짜인가? " + isAfterResult1);
boolean isAfterResult2 = localTime1.isBefore(beforeLocalTime);
System.out.println("localTime1(" + localTime1 +
")가 beforeLocalTime(" + beforeLocalTime +
")의 이후 날짜인가? " + isAfterResult2);
boolean isAfterResult3 = localTime1.isBefore(afterLocalTime);
System.out.println("localTime1(" + localTime1 +
")가 afterLocalTime(" + afterLocalTime +
")의 이후 날짜인가? " + isAfterResult3);
}
[실행 결과]
localTime1(19:50:05)가 localTime2(19:50:05)의 이후 날짜인가? false
localTime1(19:50:05)가 beforeLocalTime(15:25:45)의 이후 날짜인가? false
localTime1(19:50:05)가 afterLocalTime(21:50:50)의 이후 날짜인가? true
equals 메서드
LocalTime 클래스는 Object 클래스에서 제공하는 equals() 메서드를 오버라이딩합니다. 이 메서드를 호출하는 LocalTime 객체가 매개변수로 전달된 LocalTime 객체와 동일한지 비교합니다.
반환 결과
- 두 개의 LocalTime 객체가 동일한 경우 true를 반환합니다.
- 동일하지 않은 모든 경우에 대해 false를 반환합니다.
public static void main(String args[]) {
LocalTime localTime1 = LocalTime.of(19, 50, 05);
LocalTime localTime2 = LocalTime.of(19, 50, 05);
LocalTime beforeLocalTime = LocalTime.of(15, 25, 45);
LocalTime afterLocalTime = LocalTime.of(21, 50,50);
boolean EqualsResult1 = localTime1.equals(localTime2);
System.out.println("localTime1(" + localTime1 +
")와 localTime2(" + localTime2 +
")는 동일한가? " + EqualsResult1);
boolean EqualsResult2 = localTime1.equals(beforeLocalTime);
System.out.println("localTime1(" + localTime1 +
")와 beforeLocalTime(" + beforeLocalTime +
")는 동일한가? " + EqualsResult2);
boolean EqualsResult3 = localTime1.equals(afterLocalTime);
System.out.println("localTime1(" + localTime1 +
")와 afterLocalTime(" + afterLocalTime +
")는 동일한가? " + EqualsResult3);
}
[실행 결과]
localTime1(19:50:05)와 localTime2(19:50:05)는 동일한가? true
localTime1(19:50:05)와 beforeLocalTime(15:25:45)는 동일한가? false
localTime1(19:50:05)와 afterLocalTime(21:50:50)는 동일한가? false
'Java' 카테고리의 다른 글
[Java]시간 더하기 및 빼기(LocalTime 더하기 및 빼기) (0) | 2022.08.13 |
---|---|
[Java]날짜 더하기 및 빼기(LocalDate 더하기 및 빼기) (0) | 2022.08.13 |
[Java]두 날짜 차이 계산하기 (0) | 2022.08.12 |
[Java]날짜 정렬 방법 (0) | 2022.08.11 |
[Java]LocalDate 비교 방법(날짜 비교 방법) (0) | 2022.08.11 |
댓글