جاوا میں موازنہ کرنے والے اور موازنہ کرنے والے کے مابین فرق

مصنف: Laura McKinney
تخلیق کی تاریخ: 1 اپریل 2021
تازہ کاری کی تاریخ: 10 مئی 2024
Anonim
انٹرویو سوال | جاوا میں موازنہ بمقابلہ موازنہ کرنے والا
ویڈیو: انٹرویو سوال | جاوا میں موازنہ بمقابلہ موازنہ کرنے والا

مواد

موازنہ کرنے والا اور موازنہ کرنے والا دونوں جاوا میں عام انٹرفیس ہیں جو اشیاء کے ڈیٹا عناصر کا موازنہ کرنے کے لئے استعمال ہوتے ہیں۔ تقابلی انٹرفیس java.lang پیکیج میں موجود ہے اور کمپراٹر انٹرفیس java.util پیکیج میں موجود ہے۔ موازنہ اور موازنہ انٹرفیس کے مابین بنیادی فرق یہ ہے کہ موازنہ انٹرفیس ایک ہی ترتیب کو ترتیب دیتا ہے جبکہ موازنہ انٹرفیس ایک سے زیادہ ترتیب دینے کی ترتیب فراہم کرتا ہے۔ موازنہ اور موازنہ انٹرفیس کے درمیان کچھ اور اختلافات ہیں جن کا ہم موازنہ چارٹ میں مطالعہ کریں گے۔


  1. موازنہ چارٹ
  2. تعریف
  3. کلیدی اختلافات
  4. نتیجہ اخذ کرنا

موازنہ چارٹ

موازنہ کی بنیادموازنہموازنہ کرنے والا
بنیادی موازنہ انٹرفیس صرف ایک ترتیب کی ترتیب کی اجازت دیتا ہے۔موازنہ کرنے والا انٹرفیس ایک سے زیادہ ترتیب دینے کی ترتیب کی اجازت دیتا ہے۔
پیکیجز موازنہ انٹرفیس java.lang پیکیج میں موجود ہے۔کمپارٹر انٹرفیس java.util پیکیج میں موجود ہے۔
طریقے موازنہ انٹرفیس میں صرف ایک ہی طریقہ ہوتا ہے
عوامی انٹراکٹٹٹو (اعتراض اعتراض)؛
کمپارٹر انٹرفیس میں دو طریقے ہیں
عوامی انٹ موازنہ (اعتراض اعتراض 1، اعتراض 2)
بولین برابر (اعتراض اعتراض)
عمل آوریموازنہ انٹرفیس کلاس کے ذریعہ لاگو ہوتا ہے جس کی اشیاء کا موازنہ کیا جائے۔موازنہ انٹرفیس اس کلاس کے بجائے ایک اسپیریٹ کلاس کے ذریعہ نافذ کیا جاتا ہے جس کی اشیاء کا موازنہ کرنا ہے۔
موازنہ موازنہ ٹو (آبجیکٹ آبجیکٹ) طریقہ اس چیز کا موازنہ کرتا ہے جس کو طریقہ کار کی مدد کے لئے استعمال کیا جاتا ہے جس میں مخصوص آبجیکٹ کو طریقہ کار سے گزر جاتا ہے۔موازنہ (آبجیکٹ آبجیکٹ 1 ، آبجیکٹ 2) طریقہ ان دونوں مخصوص اشیاء کا موازنہ کریں جو طریقہ کو منظور کیا گیا ہے۔
فہرست / صفجب موازنہ کی قسم کی آبجیکٹ کی فہرست کا موازنہ کرنا ہو تو کلیکشن کلاس ایک طریقہ فراہم کرتا ہے یعنی کلیکشنس آرٹ (فہرست lst)۔جب موازنہ قسم کی اشیاء کی فہرست کا موازنہ کرنا ہو تو جمع کلاس ایک طریقہ مہیا کرتی ہے یعنی۔
مجموعہ۔ ترتیب (فہرست ، موازنہ کرنے والا)۔


موازنہ کی تعریف

موازنہ ایک انٹرفیس ہے جو java.lang پیکیج میں دستیاب ہے۔ ایک کلاس موازنہ انٹرفیس کو نافذ کرتا ہے ، تاکہ اس کے شے کو قدرتی ترتیب میں ترتیب دیا جاسکے۔ اشیاء کو قدرتی ترتیب میں ترتیب دیا گیا ہے اس کا مطلب یہ ہے کہ اشیاء کا موازنہ ان کی ASCII قدروں سے کیا جاتا ہے۔ موازنہ انٹرفیس کو نافذ کرنے والی کلاسیں بائٹ ، کریکٹر ، ڈبل ، فلوٹ ، لانگ ، شارٹ ، سٹرنگ ، اور انٹیجر کلاسز ہیں۔ یہاں تک کہ تاریخ اور کیلنڈر کلاس بھی موازنہ انٹرفیس کو نافذ کرتی ہے۔

موازنہ انٹرفیس میں صرف ایک طریقہ ہوتا ہے جو CompareTo (اعتراض آبجیکٹ) ہوتا ہے۔ یہ طریقہ پیرامیٹر میں متعین کردہ آبجیکٹ کے ساتھ طریقہ کار کے لئے استعمال ہونے والی چیز کا موازنہ کرتا ہے۔ طریقہ کا نحو ذیل میں ہے:

عوامی انٹراکٹٹٹو (اعتراض اعتراض)؛

CompareTo (آبجیکٹ اعتراض) طریقہ کی واپسی 0، جب طریقہ کے مقابلے میں دونوں چیزوں میں ایک جیسی قیمت ہو تو ، وہ لوٹ آجاتا ہے -ہوا ویلیو اگر انوائیکنگ آبجیکٹ اس سے چھوٹا ہو تو اس سے مخصوص شے اور واپس ہوجائے گی + ve قیمت اگر مطلوبہ آبجیکٹ کی وضاحت کردہ آبجیکٹ کے مقابلے میں زیادہ قدر ہو۔ جمع کرنے کی کلاس فہرست کے عناصر کو چھانٹ کر ترتیب دینے کا ایک طریقہ فراہم کرتی ہے۔ موازنہ قسم کی فہرست (اور صف) کے عناصر کو "Collections.sort (list lst)" کے طریقہ کار کا استعمال کرتے ہوئے ترتیب دیا جاسکتا ہے۔


تقابلی تعریف

موازنہ ایک انٹرفیس ہے جو java.util پیکیج میں دستیاب ہے۔ انٹرفیس کمپارٹر اس کلاس پر لاگو نہیں ہوتا جس کی اشیاء کا موازنہ کیا جائے بجائے اس کے کہ علیحدہ کلاس موازنہ کرنے والا انٹرفیس لاگو کرتی ہے تاکہ ترتیب دینے والی منطق کا اطلاق کسی دوسرے کلاس میں آبجیکٹ کے ہر ڈیٹا عنصر پر ہوتا ہے۔ موازنہ کرنے والے دو طریقوں پر مشتمل ہے:

عوامی انٹ موازنہ (اعتراض آبجیکٹ 1 ، آبجیکٹ 2) اور بولین برابر (اعتراض اعتراض)

موازنہ () کا طریقہ اول اعتراض آبجیکٹ 1 کے ساتھ دوسرے اعتراض آبجیکٹ 2 کے ساتھ موازنہ کرتا ہے۔ موازنہ () طریقہ کی واپسی 0 جب طریقہ کے مقابلے میں دونوں چیزوں میں ایک جیسی قیمت ہو تو ، وہ لوٹ آجاتا ہے -ہوا قدر اگر آبجیکٹ آبجیکٹ اس سے چھوٹا ہے تو آبجیکٹ 22 اور لوٹتا ہے + ve قدر اگر آبجیکٹ آبجیکٹ 1 کی آبجیکٹ آبجیکٹ 2 کے مقابلے میں زیادہ قدر ہے۔ مساوی () طریقوں کی جانچ پڑتال کرتی ہے کہ آیا مخصوص شے آلودہ کرنے والی شے کے برابر ہے یا نہیں۔ مساوی () طریقہ کی واپسی سچ ہے اگر دونوں موازنہ شدہ اشیاء برابر ہیں ورنہ وہ واپس آجاتا ہے جھوٹا. مجموعہ کلاس فہرست اور تقابلی قسم کے عناصر کو چھانٹنے کا طریقہ فراہم کرتا ہے۔ تقابلی اقسام کی فہرست عناصر کو ترتیب سے ترتیب دیا گیا ہے جس میں طریقہ مجموعہ (فہرست ، موازنہ کنندہ) ہے۔

  1. موازنہ انٹرفیس ایک ہی ترتیب کی ترتیب کی اجازت دیتا ہے جس کا مطلب ہے کہ آپ دوسری طرف موازنہ تو () کے طریقہ کار میں آبجیکٹ کے صرف ایک اعداد و شمار کے عنصر کا موازنہ کرسکتے ہیں موازنہ انٹرفیس ایک سے زیادہ ترتیب کی ترتیب کی اجازت دیتا ہے جس کا مطلب ہے کہ آپ اس اعتراض کے متعدد اعداد و شمار کے عناصر کا موازنہ کرسکتے ہیں۔
  2. موازنہ انٹرفیس کو اس کلاس کے ذریعہ لاگو کیا جاتا ہے جس کی اشیاء کا موازنہ کیا جانا چاہئے کیونکہ چھانٹنے والی منطق اسی طبقے کے اندر بیان کی جاتی ہے۔ دوسری طرف ، موازنہ انٹرفیس کو اس کلاس کے ذریعہ لاگو نہیں کیا جاتا ہے جس کی اشیاء کا موازنہ کیا جانا چاہئے کیونکہ چھانٹیا منطق کی وضاحت الگ کلاس میں کی جاتی ہے جہاں ہر کلاس آبجیکٹ کے سنگل ڈیٹا عنصر کو ترتیب دینے کی وضاحت کرتا ہے اور یہ متعین کلاس موازنہ انٹرفیس لاگو کرتی ہے۔ .
  3. موازنہ انٹرفیس java.lang پیکیج کے اندر ہے جبکہ ، موازنہ انٹرفیس java.util پیکیج کے اندر ہے۔
  4. موازنہ انٹرفیس صرف ایک ہی طریقہ کا اعلان کرتا ہے جو موازنہ ہوتا ہے (اعتراض آبجیکٹ) جبکہ ، موازنہ انٹرفیس دو طریقوں کا اعلان کرتا ہے جو ہیں ، موازنہ (اعتراض آبجیکٹ 1 ، آبجیکٹ 2) اور مساوی (آبجیکٹ آبجیکٹ)۔
  5. موازنہ میں موازنہ کرنے والا (آبجیکٹ آبجیکٹ) طریقہ موازنہ کرنے والے مادہ کا موازنہ کرنے والے مادہ کے ساتھ متعین کردہ آبجیکٹ کا موازنہ کرتا ہے جبکہ ، موازنہ (آبجیکٹ آبجیکٹ 1 ، آبجیکٹ 2) موازنہ کے موازنہ کو آبجیکٹ اعتراض 1 کے ساتھ موازنہ کیا جاتا ہے جو طریقہ کو منظور کیا جاتا ہے۔
  6. موازنہ کی قسم کی اشیاء کو ترتیب دینے کے ل The مجموعہ کلاس "چیلنجز سورسٹ (فہرست lst)" کو چھانٹ رہا ہے۔ مجموعہ کلاس موازنہ کرنے والی قسم کی اشیاء کو ترتیب دینے کے ل. مجموعہ کی ترتیب (ترتیب ، موازنہ کرنے والا) فراہم کرتا ہے۔

نتیجہ:

اگر آپ قدرتی ترتیب کے مطابق اشیاء کو ترتیب دینا چاہتے ہیں ، تو آپ موازنہ انٹرفیس استعمال کرسکتے ہیں ورنہ آپ کسی بھی وصف کی بنیاد پر اشیاء کو ترتیب دینا چاہتے ہیں تو موازنہ انٹرفیس استعمال ہوتا ہے۔