दी गई, निश्चित रूप से अलग-अलग सोच हैं, मेरी दुनिया में, मैं "कभी भी एक शून्य पास नहीं कर सकता" लागू नहीं कर सकता क्योंकि मैं एपीआई कॉलर्स, डेटाबेस रिकॉर्ड्स, पूर्व प्रोग्रामर आदि जैसे बेकाबू तीसरे पक्ष के साथ काम कर रहा हूं ... इसलिए मैं दृष्टिकोणों में पागल और रक्षात्मक हूं । चूंकि आप Java8 पर हैं या बाद में एक ifब्लॉक की तुलना में थोड़ा क्लीनर दृष्टिकोण है ।
public String foo(@Nullable String mayBeNothing) {
return Optional.ofNullable(mayBeNothing).orElse("Really Nothing");
}
इसमें स्वैप .orElseकरने से
आप कुछ अपवाद भी फेंक सकते हैं orElseThrow(() -> new Exception("Dont' send a null"))।
यदि आप @Nullable का उपयोग नहीं करना चाहते हैं, जो कार्यात्मक रूप से कुछ भी नहीं जोड़ता है, तो बस पैरामीटर का नाम क्यों न दें, mayBe...ताकि आपका इरादा स्पष्ट हो।