728x90
1. isAfter, isBefore
void main() {
final String date1 = "2023-07-24 17:04:32.897";
final String date2 = "2023-07-27 17:04:32.897";
final bool a = DateTime.parse(date2).isAfter(DateTime.parse(date1));
final bool b = DateTime.parse(date1).isAfter(DateTime.parse(date2));
print("date2가 data1보다 후의 날짜인가요? ${a}");
print("data1이 data2보다 후의 날짜인가요? ${b}");
final bool c = DateTime.parse(date2).isBefore(DateTime.parse(date1));
final bool d = DateTime.parse(date1).isBefore(DateTime.parse(date2));
print("date2가 data1보다 이전 날짜인가요? ${c}");
print("data1이 data2보다 이전 날짜인가요? ${d}");
}
//출력
date2가 data1보다 후의 날짜인가요? true
data1이 data2보다 후의 날짜인가요? false
date2가 data1보다 이전 날짜인가요? false
data1이 data2보다 이전 날짜인가요? true
isAfter, isBefore는 DateTime클래스의 메서드입니다.
isAfter ~후의
isAfter는 왼쪽(비교날짜)이 오른쪽(비교대상날짜) 보다 후의 날짜이면 true를 반환하고 아니면 false를 반환합니다.
ex)
2023-07-24.isAfter(2023-07-27) => false
2023-07-27.isAfter(2023-07-24) => true
isBefore ~이전의
isBefore는 왼쪽(비교날짜)이 오른쪽(비교대상날짜) 보다 이전의 날짜이면 true를 반환하고 아니면 false를 반환합니다.
ex)
2023-07-24.isBefore(2023-07-27) => true
2023-07-27.isBefore(2023-07-24) => false
2. CompareTo
void main() {
final a = "2023-01-31T16:32:13.848";
final b = DateTime.parse(a);
final c = DateTime(b.year, b.month+1, b.day, b.hour, b.minute, b.second, b.millisecond,);
final compareDate1 = DateTime.parse("2023-04-03T16:32:13.848");
final compareDate2 = DateTime.parse("2023-03-01T16:32:13.848");
final compareDate3 = DateTime.parse("2023-03-03T16:32:13.848");
print("한달후 date : $c");
print("비교 date가 크면 ${c.compareTo(compareDate1)}");
print("비교 date가 작으면 ${c.compareTo(compareDate2)}");
print("비교 date와 같으면 ${c.compareTo(compareDate3)}");
}
///출력
한달후 date : 2023-03-03 16:32:13.848
비교 date가 크면 -1
비교 date가 작으면 1
비교 date와 같으면 0
compareTo 기준으로
왼쪽이 오른쪽보다 작으면 -1,
왼쪽이 오른쪽보다 크면 1,
왼쪽이랑 오른쪽이랑 같으면 0
을 리턴해줍니다.
'Flutter > 기본' 카테고리의 다른 글
[Flutter] TextField focus remove (0) | 2023.08.09 |
---|---|
[Flutter] TextSpan 터치이벤트 설정 (0) | 2023.08.02 |
[Flutter] String to DateTime 문자열을 날짜로 변환 (0) | 2023.07.12 |
[Flutter] 애니메이션 처리를 위한 lottie 패키지 설명서 (0) | 2023.07.10 |
[Flutter] IconButton 간격 줄이기 feat.패딩,마진제거 (0) | 2023.06.30 |