Ler em inglês

Compartilhar via


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.

C#
public TimeSpan Subtract(TimeSpan ts);

Parâmetros

ts
TimeSpan

O intervalo de tempo a ser subtraído.

Retornos

Um novo intervalo de tempo cujo valor é o resultado do valor dessa instância menos o valor de ts.

Exceções

O valor retornado é menor que TimeSpan.MinValue ou maior que TimeSpan.MaxValue.

Exemplos

O exemplo a seguir usa o Subtract método para calcular a diferença entre um único TimeSpan valor e cada um dos intervalos de tempo em uma matriz. Observe que, como TimeSpan as cadeias de caracteres de formato não incluem sinais negativos na cadeia de caracteres de resultado, o exemplo usa lógica condicional para incluir um sinal negativo com intervalos de tempo negativos.

C#
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 retornado deve ser entre TimeSpan.MinValue e TimeSpan.MaxValue; caso contrário, uma exceção é gerada.

O valor retornado é um novo TimeSpan; o original TimeSpan não é modificado.

Aplica-se a

Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Confira também