टाइप डिक्लेयरेशन
हम अपने फंक्शन पैरामीटर्स पर एक और नियंत्रण यह रख सकते हैं कि उनका टाइप क्या हो। जैसे आपने पिछले अध्याय में tuples के साथ किया था, वैसे ही हम प्रत्येक वैरिएबल के लिए डेटा टाइप निर्धारित कर सकते हैं। अगर फंक्शन को दिए गए आर्ग्युमेंट का डेटा टाइप, फंक्शन डिफाइन करते समय तय किए गए डेटा टाइप से मेल नहीं खाता, तो एक error थ्रो होता है।
यह हमारे फंक्शंस को नियंत्रित रखने और अवांछित exceptions से सुरक्षित रखने का एक और तरीका है। हमारी मौजूदा my_profit फंक्शन में, आप फिलहाल हर आर्ग्युमेंट में एक string भी पास कर सकते हैं, लेकिन return स्टेटमेंट जब एक string में से दूसरी string घटाने की कोशिश करेगा तो error आ जाएगा। हम इस जोखिम से बचने के लिए प्रत्येक पैरामीटर का डेटा टाइप स्पष्ट रूप से तय कर सकते हैं।
नीचे दिए गए उदाहरण में, फंक्शन के हर पैरामीटर के लिए डेटा टाइप सेट कीजिए।
ध्यान दें, अगर हम कोई ऐसा डेटा टाइप पास करते हैं जो हमारे डिफाइन किए गए टाइप से मेल नहीं खाता, तो हमें यह error मिलेगा:
MethodError: no method matching my_profit(::Int64, ::Int64)
यह अभ्यास पाठ्यक्रम का हिस्सा है
इंटरमीडिएट Julia
अभ्यास निर्देश
- हर पैरामीटर के लिए डेटा टाइप सेट करें, जहाँ
current_priceऔरprevious_priceFloat64वैल्यू होने चाहिएँ, औरfeesकेवलInt64वैल्यू होना चाहिए।
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Define my_profit with three type-restricted arguments
function my_profit(previous_price____, current_price____, fees____=2)
return current_price - previous_price - fees
end
# Call my_profit, passing in values of the correct data type
my_profit(100.00, 105.00)