BOOLEAN ऑपरेटर के बारे में प्रश्न "|" और "||" इन दोनों ऑपरेटरों के बीच एकमात्र अंतर जो मैं पा सकता हूं; "" का उपयोग करते समय यदि बाईं ओर सत्य है तो अभिव्यक्ति के दाईं ओर मूल्यांकन नहीं किया जाएगा।
किसी व्यक्ति की पसंद के बाहर क्यों "" ओवर "||" बूलियन परीक्षण के लिए
if(true | false)
{
do something
}
vs
if (true || false)
{
do something
}
उत्तर:
उत्तर № 1 के लिए 17यदि ऑपरेशन के दुष्प्रभाव हैं तो यह मुख्य रूप से एक मुद्दा है:
निम्नलिखित को धयान मे रखते हुए:
using(IEnumerator iterator1 = args.GetEnumerator())
using (IEnumerator iterator2 = args.GetEnumerator())
{
while (iterator1.MoveNext() | iterator2.MoveNext())
{
//do stuff
}
}
क्यों कि MoveNext
ऑपरेशन के कारण साइड इफेक्ट्स हो सकते हैं दोनों के पक्ष |
इस बात पर ध्यान दिए बिना कि क्या पहला सच है।
जवाब के लिए 4 № 2
क्यों एक का उपयोग करेगा "|" ओवर "||" बूलियन परीक्षण के लिए
यदि (किसी कारण से) दाहिनी ओर के साइड-इफेक्ट्स होते हैं जो आपको होने चाहिए।
यह आम तौर पर अच्छा अभ्यास नहीं है।
जवाब के लिए 3 № 3
किसी व्यक्ति की पसंद के बाहर क्यों "" ओवर "||" बूलियन परीक्षण के लिए
ठीक है क्योंकि आप पराक्रम चाहते हैं कि दोनों पक्षों का मूल्यांकन किया जाए। इसके साइड-इफेक्ट्स हो सकते हैं जो आपको किसी भी तरह से होने चाहिए।
यह दुर्लभ है, लेकिन यह संभव है।