जावा में, मैं एक कक्षा का उपयोग करता हूं जिसमें कुछ फ़ील्ड null
हो सकते हैं। उदाहरण के लिए:तुलना में शून्य क्षेत्रों के साथ क्या करना है()?
class Foo {
String bar;
//....
}
मैं इस वर्ग के लिए एक BarComparator लिखना चाहते हैं,
private static class BarComparator
implements Comparator<Foo> {
public int compare(final Foo o1, final Foo o2)
{
// Implementation goes here
}
}
वहाँ तथ्य से निपटने के लिए o1
के किसी भी है कि, o2
, o1.bar
, o2.bar
null
हो सकता है एक मानक तरीका है , बिना घोंसले if
... else
लिखने के बिना?
चीयर्स!
विषय से मुझे पता है, लेकिन MIN/MAX_VALUE ओवर-/ 1 1 को प्राथमिकता देने का क्या कारण है? –
देरी के जवाब के लिए खेद है। यह सुनिश्चित करना है कि हमारे पास त्रिभुज असमानता है। ए> बी> सी, a.compare के लिए (बी) + b.compareTo (सी) <= a.compareTo (सी)। ऐसा नहीं है कि कोई भी परवाह करेगा ... –
अभी भी एक 'NullPointerException' फेंक सकता है, अगर ओ 1/ओ 2 शून्य है। आप ओ 1/ओ 2 को शून्य के साथ कैसे व्यवहार कर सकते हैं? ओपी का उल्लेख है: ओ 1, ओ 2, ओ 1.बार, ओ 2.बार शून्य हो सकता है। या एक तुलनित्र अनुबंध का वह हिस्सा है: नल की तुलना में एनपीई फेंकना चाहिए? – Daniel