C#의 TimeSpan.Compare() 메서드는 두 개의 TimeSpan 값을 비교하는 데 사용되며, 첫 번째 값이 두 번째 값보다 짧은지, 같은지, 아니면 더 긴지를 나타내는 정수를 반환합니다.
반환 값의 의미는 다음과 같습니다.
- -1: span1이 span2보다 짧은 경우
- 0: span1과 span2가 같은 경우
- 1: span1이 span2보다 긴 경우
구문
메서드의 기본 구문은 다음과 같습니다.
public static int Compare (TimeSpan span1, TimeSpan span2);
여기서 매개변수 span1은 비교할 첫 번째 시간 간격, span2는 비교할 두 번째 시간 간격을 의미합니다.
예제 1
다음 예제를 통해 TimeSpan.Compare() 메서드의 동작 방식을 살펴보겠습니다.
using System;
public class Demo {
public static void Main(){
TimeSpan span1 = new TimeSpan(-6, 25, 0);
TimeSpan span2 = new TimeSpan(1, 11, 25, 20);
TimeSpan span3 = TimeSpan.MinValue;
TimeSpan res1 = span1.Add(span2);
TimeSpan res2 = span2.Add(span3);
Console.WriteLine("Final Timespan (TimeSpan1 + TimeSpan2) = "+res1);
Console.WriteLine("Final Timespan (TimeSpan2 + TimeSpan3) = "+res2);
Console.WriteLine("Result (Comparison of span1 and span2) = "+TimeSpan.Compare(span1, span2));
}
}출력 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Final Timespan (TimeSpan1 + TimeSpan2) = 1.05:50:20 Final Timespan (TimeSpan2 + TimeSpan3) = -10675197.15:22:45.4775808 Result (Comparison of span1 and span2) = -1
출력 결과에서 확인할 수 있듯이, span1(-6시간 25분)은 span2(1일 11시간 25분 20초)보다 짧기 때문에 비교 결과로 -1이 반환됩니다.
예제 2
이번에는 또 다른 예제를 살펴보겠습니다.
using System;
public class Demo {
public static void Main(){
TimeSpan span1 = new TimeSpan(-6, 25, 0);
TimeSpan span2 = new TimeSpan(1, 10, 0);
Console.WriteLine("Result (Comparison of span1 and span2) = "+TimeSpan.Compare(span1, span2));
}
}출력 결과
실행 결과는 다음과 같습니다.
Result (Comparison of span1 and span2) = -1
span1이 음수 값(-6시간 25분)을 가지고 span2는 양수 값(1시간 10분)을 가지므로, 역시 -1이 반환되는 것을 확인할 수 있습니다.