के रूप में एक tuple का उपयोग कर एक विधि को आमंत्रित करें मुझे आश्चर्य है कि ऐसा करने का सबसे अच्छा तरीका क्या है।पैरामीटर सूची
val foo = Some("a")
val bar = Some(2)
def baz(a: String, b: Int) = if((b % 2) == 0) Some(a+","+b) else None
(x zip y) flatMap baz //does not compile of course
(x zip y) flatMap { x => baz(x._1, x._2) } //ugly
मुझे लगता है कि ओडर्सकी एट अल। इस उदाहरण में शोर को कम करने के लिए उनकी आस्तीन एक और चाल है।
तो प्रश्न यह है कि आपको अव्यवस्था से लड़ने का तरीका यह माना जाता है कि आपको baz
(उदा। def baz(a: (String Int))
) के कार्यान्वयन को बदलने की अनुमति नहीं है।
+1 मुझे पता है कि यह एक डुप्लिकेट है, लेकिन शीर्षक यह है कि यह शीर्षक बेहतर होगा अधिक लोगों द्वारा पाया जा सकता है :) – fresskoma