पहले पूर्णांक मूल्य के साथ जुड़े enum, मैं अपने Legno enums के रूप में बस में परिभाषित किया गया था:हो रही
NO_LEG, LEG_ONE, LEG_TWO
और return LegNo.values()[i];
फोन करके, मैं प्रत्येक enum के साथ जुड़े मूल्य प्राप्त करने में सक्षम था।
लेकिन अब मैं तय कर लिया है मैं LegNo
enum NO_LEG
चाहते पूर्णांक होना करने के लिए -1 की बजाय 0 तो मैं आरंभ करने के लिए एक निजी निर्माता का उपयोग करने का फैसला किया और इसके पूर्णांक मान सेट
NO_LEG(-1), LEG_ONE(1), LEG_TWO(2);
private LegNo(final int leg) { legNo = leg; }
केवल अब बात यह है कि क्योंकि मैं इसे values()
विधि NO_LEG
enum के लिए काम नहीं करूँगा। मैं int से जुड़े enum कैसे प्राप्त करूं? वहाँ अगर-elseif-elseif एक मामले स्विच बयान या एक का उपयोग करने से यह अन्य कर के किसी भी कारगर तरीका है
मैं इतना सवाल enum से पूर्णांक मान प्राप्त कर रहा से कोई लेना देना का एक बहुत देख सकते हैं, लेकिन यह है कि मैं कर रहा हूँ रिवर्स के बाद।
खेद im। मैं int में गुजरना चाहता हूं और इसके साथ जुड़े enum प्राप्त करना चाहता हूँ। –
@ एल-सैमुअल्स मान लीजिए मैंने आपके प्रश्न को ठीक से नहीं पढ़ा है। मेरा अपडेट देखें। – adarshr
मुझे पता है कि यह स्पष्ट प्रतीत होता है, लेकिन इसका उपयोग इस तरह करें: 'LegNo foo = LegNo.valueOf (2); '। पिछला कोड 'LegNo.LEG_TWO' वापस करेगा। – FirstOne