DateTime.AddHours(Double) DateTime.AddHours(Double) DateTime.AddHours(Double) DateTime.AddHours(Double) Method

정의

지정된 시간 수를 이 인스턴스의 값에 더하는 새 DateTime을 반환합니다.Returns a new DateTime that adds the specified number of hours to the value of this instance.

public:
 DateTime AddHours(double value);
public DateTime AddHours (double value);
member this.AddHours : double -> DateTime
Public Function AddHours (value As Double) As DateTime

매개 변수

value
Double Double Double Double

정수 및 소수로 계산된 시간 수입니다.A number of whole and fractional hours. value 매개 변수는 음수일 수도 있고 양수일 수도 있습니다.The value parameter can be negative or positive.

반환

이 인스턴스가 나타내는 날짜 및 시간과 value가 나타내는 시간 수의 합이 값인 개체입니다.An object whose value is the sum of the date and time represented by this instance and the number of hours represented by value.

예외

예제

다음 예제에서는 AddHours 날짜 및 시간으로 된 수의 정수 부분과 소수 부분 값을 추가 하는 방법입니다.The following example uses the AddHours method to add a number of whole and fractional values to a date and time. 또한 메서드 소수 부분을 포함 하는 값을 전달 하 여 발생 한 전체 자릿수 손실을 보여 줍니다.It also illustrates the loss of precision caused by passing the method a value that includes a fractional component.

using System;

public class Example
{
   public static void Main()
   {
      double[] hours = {.08333, .16667, .25, .33333, .5, .66667, 1, 2, 
                        29, 30, 31, 90, 365};
      DateTime dateValue = new DateTime(2009, 3, 1, 12, 0, 0);
      
      foreach (double hour in hours)
         Console.WriteLine("{0} + {1} hour(s) = {2}", dateValue, hour, 
                           dateValue.AddHours(hour));

   }
}
// The example displays the following output on a system whose current
// culture is en-US:
//    3/1/2009 12:00:00 PM + 0.08333 hour(s) = 3/1/2009 12:04:59 PM
//    3/1/2009 12:00:00 PM + 0.16667 hour(s) = 3/1/2009 12:10:00 PM
//    3/1/2009 12:00:00 PM + 0.25 hour(s) = 3/1/2009 12:15:00 PM
//    3/1/2009 12:00:00 PM + 0.33333 hour(s) = 3/1/2009 12:19:59 PM
//    3/1/2009 12:00:00 PM + 0.5 hour(s) = 3/1/2009 12:30:00 PM
//    3/1/2009 12:00:00 PM + 0.66667 hour(s) = 3/1/2009 12:40:00 PM
//    3/1/2009 12:00:00 PM + 1 hour(s) = 3/1/2009 1:00:00 PM
//    3/1/2009 12:00:00 PM + 2 hour(s) = 3/1/2009 2:00:00 PM
//    3/1/2009 12:00:00 PM + 29 hour(s) = 3/2/2009 5:00:00 PM
//    3/1/2009 12:00:00 PM + 30 hour(s) = 3/2/2009 6:00:00 PM
//    3/1/2009 12:00:00 PM + 31 hour(s) = 3/2/2009 7:00:00 PM
//    3/1/2009 12:00:00 PM + 90 hour(s) = 3/5/2009 6:00:00 AM
//    3/1/2009 12:00:00 PM + 365 hour(s) = 3/16/2009 5:00:00 PM
Module Example
   Public Sub Main()
      Dim hours() As Double = {.08333, .16667, .25, .33333, .5, .66667, 1, 2, _
                             29, 30, 31, 90, 365}
      Dim dateValue As Date = #3/1/2009 12:00#
      
      For Each hour As Double In hours
         Console.WriteLine("{0} + {1} hour(s) = {2}", dateValue, hour, _
                           dateValue.AddHours(hour))
      Next                             
   End Sub
End Module
' The example displays the following output on a system whose current
' culture is en-US:
' 3/1/2009 12:00:00 PM + 0.08333 hour(s) = 3/1/2009 12:04:59 PM
' 3/1/2009 12:00:00 PM + 0.16667 hour(s) = 3/1/2009 12:10:00 PM
' 3/1/2009 12:00:00 PM + 0.25 hour(s) = 3/1/2009 12:15:00 PM
' 3/1/2009 12:00:00 PM + 0.33333 hour(s) = 3/1/2009 12:19:59 PM
' 3/1/2009 12:00:00 PM + 0.5 hour(s) = 3/1/2009 12:30:00 PM
' 3/1/2009 12:00:00 PM + 0.66667 hour(s) = 3/1/2009 12:40:00 PM
' 3/1/2009 12:00:00 PM + 1 hour(s) = 3/1/2009 1:00:00 PM
' 3/1/2009 12:00:00 PM + 2 hour(s) = 3/1/2009 2:00:00 PM
' 3/1/2009 12:00:00 PM + 29 hour(s) = 3/2/2009 5:00:00 PM
' 3/1/2009 12:00:00 PM + 30 hour(s) = 3/2/2009 6:00:00 PM
' 3/1/2009 12:00:00 PM + 31 hour(s) = 3/2/2009 7:00:00 PM
' 3/1/2009 12:00:00 PM + 90 hour(s) = 3/5/2009 6:00:00 AM
' 3/1/2009 12:00:00 PM + 365 hour(s) = 3/16/2009 5:00:00 PM

설명

이 메서드는이 값을 변경 하지 않습니다 DateTime합니다.This method does not change the value of this DateTime. 대신에 새 반환 DateTime 값인이 연산의 결과입니다.Instead, it returns a new DateTime whose value is the result of this operation. 합니다 Kind 반환 된 속성 DateTime 개체와 동일 value합니다.The Kind property of the returned DateTime object is the same as that of value.

소수 부분 value 시간의 소수 부분입니다.The fractional part of value is the fractional part of an hour. 예를 들어 4.5는 4 시간, 30 분을 0 초, 0 밀리초와, 틱 수가 0에 해당 합니다.For example, 4.5 is equivalent to 4 hours, 30 minutes, 0 seconds, 0 milliseconds, and 0 ticks.

value 매개 변수는 밀리초 단위로 반올림 반올림 됩니다.The value parameter is rounded to the nearest millisecond.

결과 종료 되지 않는 반복 10 진수 이면 일부분으로 1 시간 미만 동안 시간 간격을 변환 하면 정밀도 손실이 될 수 있습니다.Converting time intervals of less than an hour to a fraction can involve a loss of precision if the result is a non-terminating repeating decimal. 예를 들어, 1 분 이어서 0.016667 시간에 해당 합니다. 문제가 있는 경우 사용할 수는 Add 메서드를 단일 메서드 호출에서 여러 종류의 시간 간격을 지정할 수 있으며 시간 간격을 시간의 소수 부분을 변환할 필요가 없습니다.(For example, one minute is 0.016667 of an hour.) If this is problematic, you can use the Add method, which enables you to specify more than one kind of time interval in a single method call and eliminates the need to convert time intervals to fractional parts of an hour.

적용 대상

추가 정보