Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में Double.CompareTo मेथड और उदाहरण


C# में Double.CompareTo() मेथड इस इंस्टेंस की तुलना निर्दिष्ट Double या Object से करता है और एक इंटीजर लौटाता है जो क्रम को दर्शाता है।

सिंटैक्स

public int CompareTo (double val);
public int CompareTo (object val);

रिटर्न मान

मानअर्थ
< 0यह इंस्टेंस val से कम है
= 0यह इंस्टेंस val के बराबर है
> 0यह इंस्टेंस val से अधिक है

उदाहरण 1: दो समान डबल मानों की तुलना

using System; 

public class Demo { 
    public static void Main() { 
        double d1 = 150d;
        double d2 = 150d;
        
        Console.WriteLine("Double1 Value = " + d1);
        Console.WriteLine("Double2 Value = " + d2);
        Console.WriteLine("Comparison result = " + d1.CompareTo(d2));
    } 
}

आउटपुट

Double1 Value = 150
Double2 Value = 150
Comparison result = 0

उदाहरण 2: डबल और बॉक्स्ड ऑब्जेक्ट की तुलना

using System; 

public class Demo { 
    public static void Main() { 
        double d1 = 20d;
        object d2 = 20d; // बॉक्स्ड डबल
        
        Console.WriteLine("Double1 Value = " + d1);
        Console.WriteLine("Double2 Value = " + d2);
        Console.WriteLine("Comparison result = " + d1.CompareTo(d2));
    } 
}

आउटपुट

Double1 Value = 20
Double2 Value = 20
Comparison result = 0

व्यावहारिक उपयोग: सॉर्टिंग और तुलना

using System;
using System.Collections.Generic;

public class Demo {
    public static void Main() {
        List numbers = new List { 3.14, 1.41, 2.71, 0.57 };
        
        Console.WriteLine("Before sorting:");
        numbers.ForEach(n => Console.Write(n + " "));
        
        numbers.Sort(); // आंतरिक रूप से CompareTo का उपयोग करता है
        
        Console.WriteLine("\nAfter sorting:");
        numbers.ForEach(n => Console.Write(n + " "));
    }
}

आउटपुट

Before sorting:
3.14 1.41 2.71 0.57 
After sorting:
0.57 1.41 2.71 3.14 

विशेष मानों का संचालन

  • NaN किसी भी मान से कम माना जाता है, यहां तक कि खुद से भी।
  • NegativeInfinity सभी मानों से कम।
  • PositiveInfinity सभी मानों से अधिक।

सावधानी

फ्लोटिंग-पॉइंट परिशुद्धता के कारण, गणना से प्राप्त मान जो समान होने चाहिए, CompareTo में 0 के अलावा मान दे सकते हैं। तुलना के लिए ईपीएसिलॉन-आधारित दृष्टिकोण पर विचार करें।

  1. - C# में Int32.CompareTo मेथड उदाहरण सहित

    C# में Int32.CompareTo मेथड का उपयोग इस इंस्टेंस की तुलना किसी निर्दिष्ट ऑब्जेक्ट या Int32 से करने और उनके सापेक्ष मानों का संकेत लौटाने के लिए किया जाता है।सिंटैक्सनिम्नलिखित सिंटैक्स हैं:public int CompareTo (int val); public int CompareTo (object val);पहले सिंटैक्स का मान तुलना करने के लिए एक इं

  1. - C# में UInt64.CompareTo() मेथड - उदाहरणों के साथ

    C# में UInt64.CompareTo() मेथड वर्तमान इंस्टेंस की तुलना किसी निर्दिष्ट ऑब्जेक्ट या UInt64 मान से करता है और उनके सापेक्ष मानों का संकेत लौटाता है। सिंटैक्स दो ओवरलोड उपलब्ध हैं: public int CompareTo (object val); public int CompareTo (ulong val); पहला सिंटैक्स: val तुलना के लिए एक ऑब्जेक्ट है दूस

  1. - C# में UInt16.CompareTo() मेथड उदाहरण सहित

    C# में UInt16.CompareTo() मेथड का उपयोग वर्तमान इंस्टेंस की तुलना एक निर्दिष्ट ऑब्जेक्ट या UInt16 से करने और उनके सापेक्ष मानों का संकेत लौटाने के लिए किया जाता है। सिंटैक्स निम्नलिखित सिंटैक्स है - public int CompareTo (object val); public int CompareTo (ushort val); यहां, पहले सिंटैक्स के लिए मान