मैं प्रतिबिंबित रूप से एक विधि का आह्वान कर रहा हूं जिसका तर्क value class का उदाहरण हो सकता है या नहीं। चूंकि मूल्य वर्गों का उद्देश्य अंतर्निहित मूल्य के मुक्केबाजी से बचने के लिए है, यदि पैरामीटर प्रकार मूल्य वर्ग है तो प्रश्न में विधि वास्तव में अनबॉक्स किए गए मूल्य की अपेक्षा करेगी। इस मामले को संभालने के लिए मैं मूल्य वर्ग से अंतर्निहित मूल्य को खोलने की कोशिश कर रहा हूं। मैं पहली बार है, तो तर्क एक मूल्य वर्ग के है निर्धारित करने के लिए की जरूरत है, और यहाँ मैं पहली बाधा मारा:स्कैला: मूल्य वर्गों की वस्तुओं को पहचानना
case class NonValueClass(underlying: Int)
:
def isObjectOfValueClass(arg: Any) =
classOf[AnyVal].isAssignableFrom(arg.getClass)
इस उम्मीद के रूप में विधि के लिए रिटर्न true
काम नहीं करता है,
isObjectOfValueClass
कैसे लागू किया जा सकता है? या क्या ऐसी पद्धति को प्रतिबिंबित करने का एक आसान तरीका है जो मूल्य वर्ग की वस्तु को तर्क के रूप में ले सकता है?
वैसे, मूल्य वर्ग न केवल प्राइमेटिव्स बल्कि वस्तुओं को भी लपेट सकता है। –