groovy
टर्नेरी और एल्विस ऑपरेटर्स
खोज…
टिप्पणियों
एल्विस ऑपरेटर स्थिति-भाग के ग्रूवी-सत्य के आधार पर मूल्यांकन करता है।
मानक रूप बनाम एल्विस रूप
// long form
String sayHello(String name){
"Hello, ${name ? name : 'stranger'}."
}
// elvis
String sayHello(String name){
"Hello, ${name ?: 'stranger'}."
}
ध्यान दें कि "एल्विस" प्रारूप "सही" शब्द को छोड़ देता है क्योंकि मूल तुलना मूल्य का उपयोग "सही" मामले में किया जाना है। यदि name
ग्रूवी true
, तो यह अभिव्यक्ति के मूल्य के रूप में वापस आ जाएगा।
असाइनमेंट में उपयोग (शर्त के साथ)
def results = []
(1..4).each{
def what = (it%2) ? 'odd' : 'even'
results << what
}
assert results == ['odd', 'even', 'odd', 'even']
यहां, अस्तित्व (ग्रूवी-ट्रुथ) के परीक्षण की तुलना में (parentheses)
-कंडीशन ( (parentheses)
) थोड़ा अधिक जटिल है।
Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow