मैं गतिशील enum लुकअप से संबंधित एक संकलन त्रुटि ("बाउंड मिस्चैच: ...") के आसपास पाने की कोशिश कर रहा हूं।Enum.valueOf (कक्षा <T> enumType, स्ट्रिंग नाम) प्रश्न
String enumName = whatever.getEnumName();
Class<? extends Enum<?>> enumClass = whatever.getEnumClass();
Enum<?> enumValue = Enum.valueOf(enumClass, enumName);
जो कुछ भी मैं करता हूँ, मैं हमेशा उस संकलन त्रुटि के साथ समाप्त:
असल में मैं कुछ इस तरह हासिल करना चाहते हैं। ईमानदारी से, जेनेरिक और enums मेरे लिए काफी दिमाग में हैं ...
मैं यहाँ क्या गलत कर रहा हूँ?
सवाल enums, जेनरिक और प्रतिबिंब के बारे में है। आप जेनरिक ध्यान नहीं देते हैं , बिंदु क्या है? विशेष रूप से 'दुर्लभ प्रकार' जैसे 'कक्षा <' के लिए जा रहा है? एनम> ' –
बिंदु यह है कि ए) यह अन्यथा सहायक विधि या प्रकार के बिना काम नहीं कर सकता है और बी) हम निश्चित रूप से जानते हैं कि कोई भी 'कक्षा एनम बढ़ाता है> 'कक्षा <ई को भी संतुष्ट करेगा' ई> '(क्योंकि एनम क्लास काम करने का तरीका है) भले ही किसी प्रकार के चर के बिना जांचने का कोई तरीका न हो। '@ SuppressWarnings' एक एनोटेशन है जिसे आपको केवल तभी उपयोग करना चाहिए यदि आप जानते हैं कि आप क्या कर रहे हैं, और मुझे पता है। –