परिचय
C# में Single.CompareTo() मेथड इस इंस्टेंस की तुलना निर्दिष्ट ऑब्जेक्ट या अन्य Single इंस्टेंस से करता है और एक इंटीजर वापस करता है जो दर्शाता है कि इस इंस्टेंस का मान कम, बराबर, या अधिक है।
वापसी मान
- 0 से कम: यह इंस्टेंस
valueसे कम है - 0: यह इंस्टेंस
valueके बराबर है - 0 से अधिक: यह इंस्टेंस
valueसे अधिक है
सिंटैक्स
public int CompareTo(float value); public int CompareTo(object value);
पहले सिंटैक्स में value तुलना के लिए सिंगल-प्रिसिजन फ्लोटिंग-पॉइंट संख्या है, दूसरे में तुलना के लिए ऑब्जेक्ट।
उदाहरण 1: दो फ्लोट मानों की तुलना
using System;
public class Demo {
public static void Main() {
float f1 = 50.7f;
float f2 = 50.7f;
Console.WriteLine("Value1 = " + f1);
Console.WriteLine("Value2 = " + f2);
Console.WriteLine("क्या f1 और f2 समान हैं? = " + f1.CompareTo(f2)); // 0
}
}
आउटपुट
Value1 = 50.7 Value2 = 50.7 क्या f1 और f2 समान हैं? = 0
उदाहरण 2: ऑब्जेक्ट के साथ तुलना
using System;
public class Demo {
public static void Main() {
float f1 = 50.7f;
object f2 = 50.7f;
Console.WriteLine("Value1 = " + f1);
Console.WriteLine("Value2 = " + f2);
int res = f1.CompareTo(f2);
if (res > 0)
Console.WriteLine("f1 > f2");
else if (res < 0)
Console.WriteLine("f1 < f2");
else
Console.WriteLine("f1 = f2");
}
}
आउटपुट
Value1 = 50.7 Value2 = 50.7 f1 = f2
महत्वपूर्ण नोट्स
NaNकिसी भी मान से कम माना जाता है, स्वयं से भी (NaN.CompareTo(NaN) == 0लेकिनNaN < xसभी x के लिए true है)।IComparableऔरIComparable<Single>इम्प्लीमेंट करता है।floatC# मेंSystem.Singleका एलियास है।- फ्लोटिंग-पॉइंट तुलना में प्रिसिजन समस्याएं हो सकती हैं - सटीक तुलना के लिए इप्सिलॉन (epsilon) का उपयोग करें।