"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > लिनक्यू के सिवाय () विधि के लिए () और गठशकोड () को ठीक से ओवरराइड कैसे करें?

लिनक्यू के सिवाय () विधि के लिए () और गठशकोड () को ठीक से ओवरराइड कैसे करें?

2025-02-06 पर पोस्ट किया गया
ब्राउज़ करें:283

] कस्टम कक्षाओं में उचित वस्तु तुलना और हैशिंग सुनिश्चित करने के लिए महत्वपूर्ण है। यह लेख आपके सिफारिश के लिए इन विधियों को लागू करने का सही तरीका प्रदर्शित करता है, जो कि LINQ के सिवाय () विधि के साथ इसके उपयोग को सक्षम करने के लिए है।

How to Properly Override Equals() and GetHashCode() for LINQ's Except() Method?
(), आपको एक कस्टम कार्यान्वयन प्रदान करने की आवश्यकता है जो उनके अद्वितीय गुणों के आधार पर वस्तुओं की तुलना करता है। आपके मामले में, सिफारिश की गई संपत्ति एक उपयुक्त पहचानकर्ता है। यहाँ सही कार्यान्वयन है:

सार्वजनिक ओवरराइड बूल बराबर (ऑब्जेक्ट obj) { var आइटम = obj सिफारिश के रूप में; if (आइटम == नल) { विवरण झूठा है; } इसे वापस करें। … लगातार तुलना के लिए, लौटा हुआ हैश कोड समान पहचान वाले गुणों वाली वस्तुओं के लिए समान होना चाहिए। आपके मामले में, आप सिफारिश की गई संपत्ति का हैश कोड वापस कर सकते हैं: सार्वजनिक ओवरराइड इंट गेथकोड () { इसे वापस करें। recommendationId.gethashcode (); … अन्य उनकी सिफारिश की संपत्ति के आधार पर। उदाहरण के लिए:

var list1 = new List { / * ... * /}; var list2 = नई सूची { / * ... * /}; var result = list1.except (list2);

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3