मैं नाम-पैरामीटर के साथ एक अनाम फ़ंक्शन लिखने के लिए संघर्ष कर रहा हूं। यहाँ मैं थक गया हूँ।स्कैला अज्ञात फ़ंक्शन पर नाम पैरामीटर
val fun = (x: Boolean, y: =>Int) => if(x) y else 0
यह निम्न त्रुटि के साथ विफल रहता है।
Error:(106, 31) identifier expected but '=>' found.
val fun = (x: Boolean, y: =>Int) => if(x) y else 0
^
Error:(109, 3) ')' expected but '}' found.
}
^
मानक फ़ंक्शन के रूप में कभी भी एक ही कोड कैसे काम करता है।
def fun1(x: Boolean, y: =>Int) = if(x) y else 0
कोई बात नहीं?
--------------- संपादित -----------------
मैं एक दो भाग समस्या थी। सेनिया उत्तर ने शुरुआती मामला हल किया। मान लीजिए मेरे पास एक फ़ंक्शन एक फ़ंक्शन लेता है।
def xxx[A,B](f:(A,=>B)=>B)={}
सेनिया समाधान के अनुसार यह काम करता है।
val fun: (Int, =>Boolean) => Boolean = (x, y) => y
xxx[Int,Boolean](fun)
हालांकि मैं इंटरमीडिएट मजे से छुटकारा पाने और अज्ञात फ़ंक्शन के साथ xxx पर कॉल करना चाहता हूं।
xxx((Int, =>Boolean) => Boolean = (x, y) => y)
काम नहीं करेगा। कोई जानकारी यह कैसे करनी है ?
हाय, आपका समाधान काम करता है। हालांकि मेरे पास एक और चीज है। मूल पोस्ट संपादित किया। क्या आप मेरी मदद कर सकते हैं। –
@ साजिथसिल्वा: अद्यतन – senia
देखें धन्यवाद वास्तव में मदद के लिए उपयुक्त है। –