TimeSpan.Subtract(TimeSpan) Método

Definição

Retorna um novo objeto TimeSpan cujo valor é a diferença entre o objeto TimeSpan especificado e essa instância.Returns a new TimeSpan object whose value is the difference between the specified TimeSpan object and this instance.

public:
 TimeSpan Subtract(TimeSpan ts);
public TimeSpan Subtract (TimeSpan ts);
member this.Subtract : TimeSpan -> TimeSpan
Public Function Subtract (ts As TimeSpan) As TimeSpan

Parâmetros

ts
TimeSpan

O intervalo de tempo a ser subtraído.The time interval to be subtracted.

Retornos

Um novo intervalo de tempo cujo valor é o resultado do valor dessa instância menos o valor de ts.A new time interval whose value is the result of the value of this instance minus the value of ts.

Exceções

O valor de retorno é menor que MinValue ou maior que MaxValue.The return value is less than MinValue or greater than MaxValue.

Exemplos

O exemplo a seguir usa Subtract o método para calcular a diferença entre um TimeSpan único valor e cada um dos intervalos de tempo em uma matriz.The following example uses the Subtract method to calculate the difference between a single TimeSpan value and each of the time intervals in an array. Observe que, como TimeSpan as cadeias de formato não incluem sinais negativos na cadeia de caracteres de resultado, o exemplo usa a lógica condicional para incluir um sinal negativo com intervalos de tempo negativos.Note that, because TimeSpan format strings do not include negative signs in the result string, the example uses conditional logic to include a negative sign with negative time intervals.

TimeSpan baseTimeSpan = new TimeSpan(1, 12, 15, 16);

// Create an array of timespan intervals.
TimeSpan[] intervals = { 
   TimeSpan.FromDays(1.5), 
   TimeSpan.FromHours(1.5), 
   TimeSpan.FromMinutes(45), 
   TimeSpan.FromMilliseconds(505),
   new TimeSpan(1, 17, 32, 20), 
   new TimeSpan(-8, 30, 0) 
};

// Calculate a new time interval by adding each element to the base interval.
foreach (var interval in intervals)
   Console.WriteLine(@"{0,-10:g} - {3}{1,15:%d\:hh\:mm\:ss\.ffff} = {4}{2:%d\:hh\:mm\:ss\.ffff}",
                     baseTimeSpan, interval, baseTimeSpan.Subtract(interval),
                     interval < TimeSpan.Zero ? "-" : "",
                     baseTimeSpan < interval.Duration() ? "-" : "");

// The example displays the following output:
//       1:12:15:16 - 1:12:00:00.0000 = 0:00:15:16.0000
//       1:12:15:16 - 0:01:30:00.0000 = 1:10:45:16.0000
//       1:12:15:16 - 0:00:45:00.0000 = 1:11:30:16.0000
//       1:12:15:16 - 0:00:00:00.5050 = 1:12:15:15.4950
//       1:12:15:16 - 1:17:32:20.0000 = -0:05:17:04.0000
//       1:12:15:16 - -0:07:30:00.0000 = 1:19:45:16.0000

Comentários

O valor de retorno deve estar TimeSpan.MinValue entre TimeSpan.MaxValuee; caso contrário, uma exceção será lançada.The return value must be between TimeSpan.MinValue and TimeSpan.MaxValue; otherwise, an exception is thrown.

O valor de retorno é um TimeSpannovo; o TimeSpan original não é modificado.The return value is a new TimeSpan; the original TimeSpan is not modified.

Aplica-se a

Veja também