Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# DateTime.AddSeconds() 메서드 완벽 정리: 초 단위 시간 더하기와 빼기

C#의 DateTime.AddSeconds() 메서드는 현재 DateTime 인스턴스의 값에 지정한 초를 더한 새로운 DateTime 객체를 반환합니다. DateTime은 불변(immutable) 구조체이므로 원본 값은 그대로 유지되며, 연산 결과는 항상 새로운 인스턴스로 생성된다는 점이 특징입니다.

문법(Syntax)

public DateTime AddSeconds (double sec);

매개변수 sec에는 더할 초 값을 지정합니다. 매개변수가 double 형식이므로 소수점 이하의 밀리초 단위 값도 전달할 수 있으며, 초를 빼고 싶다면 음수 값을 입력하면 됩니다.

예제 1: 초 더하기

다음 예제는 DateTime.AddSeconds() 메서드를 사용하여 기존 날짜와 시간에 25초를 더하는 방법을 보여줍니다.

using System;
public class Demo {
   public static void Main(){
      DateTime d1 = new DateTime(2019, 10, 25, 6, 20, 40);
      DateTime d2 = d1.AddSeconds(25);
      System.Console.WriteLine("Initial DateTime = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d1);
      System.Console.WriteLine("
New DateTime (After adding seconds) = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d2);
   }
}

출력 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Initial DateTime = 25 October 2019, 06:20:40
New DateTime (After adding seconds) = 25 October 2019, 06:21:05

예제 2: 초 빼기

AddSeconds() 메서드에 음수 값을 전달하면 초를 뺄 수도 있습니다. 아래 예제는 기존 시간에서 10초를 빼는 코드입니다.

using System;
public class Demo {
   public static void Main(){
      DateTime d1 = new DateTime(2019, 10, 25, 6, 20, 40);
      DateTime d2 = d1.AddSeconds(-10);
      System.Console.WriteLine("Initial DateTime = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d1);
      System.Console.WriteLine("
New DateTime (After subtracting seconds) = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d2);
   }
}

출력 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Initial DateTime = 25 October 2019, 06:20:40
New DateTime (After subtracting seconds) = 25 October 2019, 06:20:30

참고 사항

AddSeconds() 외에도 C#에서는 AddMinutes(), AddHours(), AddDays() 등 다양한 시간 단위의 덧셈 메서드를 제공합니다. 또한 AddSeconds()는 내부적으로 double 값의 정밀도 특성 때문에 결과를 가장 가까운 밀리초 단위로 반올림한다는 점도 기억해 두면 좋습니다.