C#의 DateTime.AddMinutes() 메서드는 현재 DateTime 인스턴스의 값에 지정한 분(minute)을 더한 결과로, 새로운 DateTime 객체를 반환하는 메서드입니다. 특정 시각에서 몇 분 후 또는 몇 분 전의 시간을 계산할 때 유용하게 활용됩니다.
주요 특징
- DateTime 구조체는 불변(immutable)이므로, 이 메서드는 원본 인스턴스를 변경하지 않고 새 인스턴스를 반환합니다.
- 매개변수가 double 형식이므로 소수 단위의 분도 입력할 수 있으며, 밀리초(ms) 단위까지 반올림되어 처리됩니다.
- 음수 값을 전달하면 해당 분만큼 시간이 차감(빼기)됩니다.
구문(Syntax)
메서드의 기본 구문은 다음과 같습니다.
public DateTime AddMinutes (double m);
여기서 m은 더할 분 수를 의미합니다. 만약 음수 값이 전달되면, 그만큼의 분이 빼지게 됩니다.
예제 1: 분 더하기
DateTime.AddMinutes() 메서드를 사용해 기존 시간에 25분을 더하는 예제입니다.
using System;
public class Demo {
public static void Main(){
DateTime d1 = new DateTime(2019, 09, 10, 5, 15, 25);
DateTime d2 = d1.AddMinutes(25);
System.Console.WriteLine("Initial DateTime = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d1);
System.Console.WriteLine("\nNew DateTime (After adding minutes) = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d2);
}
}실행 결과
위 코드를 실행하면 다음과 같은 출력이 생성됩니다.
Initial DateTime = 10 September 2019, 05:15:25 New DateTime (After adding minutes) = 10 September 2019, 05:40:25
초기 시각 05:15:25에 25분이 더해져 05:40:25라는 새로운 DateTime 값이 반환된 것을 확인할 수 있습니다.
예제 2: 음수 값으로 분 빼기
AddMinutes()에 음수를 전달하면 시간이 차감됩니다. 아래 예제에서는 15분을 빼 보겠습니다.
using System;
public class Demo {
public static void Main(){
DateTime d1 = new DateTime(2019, 09, 10, 5, 15, 25);
DateTime d2 = d1.AddMinutes(-15);
System.Console.WriteLine("Initial DateTime = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d1);
System.Console.WriteLine("\nNew DateTime (After subtracting minutes) = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d2);
}
}실행 결과
위 코드를 실행하면 다음과 같은 출력이 생성됩니다.
Initial DateTime = 10 September 2019, 05:15:25 New DateTime (After subtracting minutes) = 10 September 2019, 05:00:25
음수 값(-15)이 전달되어 초기 시각 05:15:25에서 15분이 빠진 05:00:25가 반환되었습니다.
정리
DateTime.AddMinutes() 메서드는 양수로 분을 더하고, 음수로 분을 빼는 간단하고 직관적인 방법을 제공합니다. 원본 DateTime은 그대로 유지되며 항상 새로운 DateTime 인스턴스가 반환된다는 점만 기억하면, 일정 계산이나 타임스탬프 조작 등 다양한 상황에서 안전하게 활용할 수 있습니다.