Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

Double.NaN champ

 

Date de publication : novembre 2016

Représente une valeur qui n'est pas un nombre (NaN). Ce champ est constant.

Espace de noms:   System
Assembly:  mscorlib (dans mscorlib.dll)

public const double NaN

Valeur de champ

Type: System.Double

Retourne une méthode ou un opérateur NaN lorsque le résultat d’une opération est indéfini. Par exemple, le résultat de la division de zéro par zéro est NaN, comme illustré dans l’exemple suivant. (Toutefois, notez que la division d’un nombre différent de zéro par zéro retourne PositiveInfinity ou NegativeInfinity, selon le signe du diviseur.)

double zero = 0.0;
Console.WriteLine("{0} / {1} = {2}", zero, zero, zero/zero);
// The example displays the following output:
//         0 / 0 = NaN      

En outre, un appel de méthode avec un NaN valeur ou une opération sur un NaN renvoie la valeur NaN, comme illustré dans l’exemple suivant.

double nan1 = Double.NaN;

Console.WriteLine("{0} + {1} = {2}", 3, nan1, 3 + nan1);
Console.WriteLine("Abs({0}) = {1}", nan1, Math.Abs(nan1));
// The example displays the following output:
//       3 + NaN = NaN
//       Abs(NaN) = NaN

Utilisez la IsNaN méthode pour déterminer si une valeur n’est pas un nombre. Le Equality opérateur considère deux NaN valeurs inégales entre eux. En général, Double opérateurs ne peuvent pas être utilisés pour comparer Double.NaN avec d’autres Double valeurs, bien que les méthodes de comparaison (tels que Equals et CompareTo) peut. L’exemple suivant illustre la différence de comportement entre les Double les méthodes et les opérateurs de comparaison.

using System;

public class Example
{
   public static void Main()
   {
      Console.WriteLine("NaN == NaN: {0}", Double.NaN == Double.NaN); 
      Console.WriteLine("NaN != NaN: {0}", Double.NaN != Double.NaN); 
      Console.WriteLine("NaN.Equals(NaN): {0}", Double.NaN.Equals(Double.NaN)); 
      Console.WriteLine("! NaN.Equals(NaN): {0}", ! Double.NaN.Equals(Double.NaN)); 
      Console.WriteLine("IsNaN: {0}", Double.IsNaN(Double.NaN));

      Console.WriteLine("\nNaN > NaN: {0}", Double.NaN > Double.NaN); 
      Console.WriteLine("NaN >= NaN: {0}", Double.NaN >= Double.NaN); 
      Console.WriteLine("NaN < NaN: {0}", Double.NaN < Double.NaN);
      Console.WriteLine("NaN < 100.0: {0}", Double.NaN < 100.0); 
      Console.WriteLine("NaN <= 100.0: {0}", Double.NaN <= 100.0); 
      Console.WriteLine("NaN >= 100.0: {0}", Double.NaN > 100.0);
      Console.WriteLine("NaN.CompareTo(NaN): {0}", Double.NaN.CompareTo(Double.NaN)); 
      Console.WriteLine("NaN.CompareTo(100.0): {0}", Double.NaN.CompareTo(100.0)); 
      Console.WriteLine("(100.0).CompareTo(Double.NaN): {0}", (100.0).CompareTo(Double.NaN)); 
   }
}
// The example displays the following output:
//       NaN == NaN: False
//       NaN != NaN: True
//       NaN.Equals(NaN): True
//       ! NaN.Equals(NaN): False
//       IsNaN: True
//       
//       NaN > NaN: False
//       NaN >= NaN: False
//       NaN < NaN: False
//       NaN < 100.0: False
//       NaN <= 100.0: False
//       NaN >= 100.0: False
//       NaN.CompareTo(NaN): 0
//       NaN.CompareTo(100.0): -1
//       (100.0).CompareTo(Double.NaN): 1

L'exemple suivant illustre l'utilisation de NaN :

Double zero = 0;

// This condition will return false.
if ((0 / zero) == Double.NaN) 
   Console.WriteLine("0 / 0 can be tested with Double.NaN.");
else 
   Console.WriteLine("0 / 0 cannot be tested with Double.NaN; use Double.IsNan() instead.");

Plateforme Windows universelle
Disponible depuis 8
.NET Framework
Disponible depuis 1.1
Bibliothèque de classes portable
Pris en charge dans : plateformes .NET portables
Silverlight
Disponible depuis 2.0
Silverlight pour Windows Phone
Disponible depuis 7.0
Windows Phone
Disponible depuis 8.1
Retour au début
Afficher: