📜  C#中的Double.Equals()方法与示例

📅  最后修改于: 2021-05-29 22:40:25             🧑  作者: Mango

Double.Equals()方法用于获取一个值,该值指示Double的两个实例是否表示相同的值。此方法的重载列表中共有两种方法,如下所示:

  • 等于(双精度)方法
  • 等于(对象)方法

Double.Equals(Double)

此方法用于返回一个值,该值指示此实例和指定的Double对象是否表示相同的值。

下面的程序说明Double.Equals()方法的用法:

范例1:

// C# program to demonstrate the
// Double.Equals(Double)
// Method
using System;
using System.Globalization;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
        // Declaring and initializing value1
        double value1 = 10d;
  
        // Declaring and initializing value2
        double value2 = 20d;
  
        // compare both double value
        // using Equals(Double) method
        bool status = value1.Equals(value2);
  
        // checking the status
        if (status)
            Console.WriteLine("{0} is equal to {1}",
                                    value1, value2);
        else
            Console.WriteLine("{0} is not equal to {1}",
                                        value1, value2);
    }
}
输出:
10 is not equal to 20

范例2:

// C# program to demonstrate the
// Double.Equals(Double)
// Method
using System;
using System.Globalization;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
  
        // calling get() method
        get(5d, 5d);
        get(5.5d, 4.5d);
        get(10d, 20d);
        get(7.5d, 19.5d);
    }
  
    // defining get() method
    public static void get(double value1, double value2)
    {
  
        // compare both double value
        // using Equals(Double) method
        bool status = value1.Equals(value2);
  
        // cheking the status
        if (status)
            Console.WriteLine("{0} is equal to {1}", 
                                    value1, value2);
        else
            Console.WriteLine("{0} is not equal to {1}",
                                        value1, value2);
    }
}
输出:
5 is equal to 5
5.5 is not equal to 4.5
10 is not equal to 20
7.5 is not equal to 19.5

Double.Equals(Object)方法

此方法用于返回一个值,该值指示此实例是否等于指定的对象。

下面的程序说明了上述方法的用法:

范例1:

// C# program to demonstrate the
// Double.Equals(Object)
// Method
using System;
using System.Globalization;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
        // Declaring and initializing value1
        double value1 = 10d;
  
        // Declaring and initializing value2
        object value2 = 1 / 36;
  
        // compare both double value
        // using Equals(object) method
        bool status = value1.Equals(value2);
  
        // checking the status
        if (status)
            Console.WriteLine("{0} is equal to {1}", 
                                   value1, value2);
        else
            Console.WriteLine("{0} is not equal to {1}",
                                        value1, value2);
    }
}
输出:
10 is not equal to 0

范例2:

// C# program to demonstrate the
// Double.Equals(object)
// Method
using System;
using System.Globalization;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
        // calling get() method
        get(5d, 1 / 3);
        get(5.5d, 1 / 3);
        get(10d, 1 / 24);
        get(7.5d, 2 / 5);
    }
  
    // defining get() method
    public static void get(double value1, object value2)
    {
  
        // compare both double value
        // using Equals(object) method
        bool status = value1.Equals(value2);
  
        // checking the status
        if (status)
            Console.WriteLine("{0} is equal to {1}",
                                    value1, value2);
        else
            Console.WriteLine("{0} is not equal to {1}",
                                        value1, value2);
    }
}
输出:
5 is not equal to 0
5.5 is not equal to 0
10 is not equal to 0
7.5 is not equal to 0

参考:

  • https://docs.microsoft.com/zh-cn/dotnet/api/system.double.equals?view=netframework-4.7.2