मेरे पास एक समस्या है और यह सोच रहा था कि इसे कैसे हल किया जाए। मैं एक सामान्य वर्ग Tuple<A,B>
है और अब मैं ए और बी के अनुसार यह इस तरह दिखना चाहिए उनके tuples सॉर्ट करने के लिए करना चाहते हैं:सुनिश्चित करें कि ऑब्जेक्ट्स लागू करने योग्य
क्रमित किए बिना:
(1,5) (2,8) (6,8) (1,4) (2,4)
छाँटे गए:
(1,4) (1,5) (2,4) (2,8) (6,8)
के लिए उस कारण मैंने ट्यूपल क्लास में एक सामान्य तुलना विधि (public int compareTo(Tuple<A, B> other)
) को लागू करने के बारे में सोचा था। एकमात्र समस्या ये है कि सभी ऑब्जेक्ट्स जिन्हें आप वर्ग को पैरामीटर कर सकते हैं (उदा। ए = इंटीजर, बी = स्ट्रिंग) को इस पूरी चीज को काम करने के लिए तुलना करने के लिए भी विधि को कार्यान्वित करना होगा।
क्या यह सुनिश्चित करने का कोई तरीका है कि टुपल सभी ऑब्जेक्ट्स को तुलनात्मक इंटरफ़ेस को कार्यान्वित कर सकता है?
या इस समस्या को हल करने के तरीके पर कोई अन्य सुझाव हैं?
धन्यवाद
मैं पसंद करता हूं 'ए तुलनात्मक super A>' बढ़ाता है, लेकिन टुपल पर तुलनात्मक रूप से लागू करने के लिए +1। मुझे याद रखना चाहिए था। –
आपको 'ए तुलनात्मक ' का उपयोग नहीं करना चाहिए ... यह अन्य वर्गों के साथ कच्चे 'तुलनात्मक' को लागू करने वाले पुराने वर्गों के साथ काम नहीं करेगा। 'ए' के साथ मिमीर्स के हस्ताक्षर तुलनात्मक super A> 'सही है। – ColinD
आह, धन्यवाद। मैंने अपना जवाब संपादित कर दिया है ताकि गुमराह न किया जा सके, और एमएमएर्स के संस्करण को ऊपर उठाया हो। – Lyle