निम्नलिखित स्निपेट पर विचार करें:
"12-18" -Contains "-"
आपको लगता है कि यह मूल्यांकन करता है true
, लेकिन ऐसा नहीं है। इसके false
बदले मूल्यांकन करेंगे । मुझे यकीन नहीं है कि ऐसा क्यों होता है, लेकिन यह होता है।
इससे बचने के लिए, आप इसके बजाय इसका उपयोग कर सकते हैं:
"12-18".Contains("-")
अब अभिव्यक्ति सत्य का मूल्यांकन करेगी।
पहला कोड स्निपेट ऐसा क्यों करता है? वहाँ के बारे में कुछ खास है -
कि अच्छी तरह से नहीं खेलता है -Contains
? प्रलेखन इसके बारे में कुछ उल्लेख नहीं है।
"12-18".Contains("-")