2010-04-11 16 views
51

क्या ग्रहण में दिए गए जावा एनम के आस-पास एक स्विच केस "ऑटो-निर्माण" का एक CTRL + स्पेस-जैसा तरीका है? मुझे सभी एनम मामलों के साथ एक स्टब चाहिए ...ग्रहण: जावा एनम स्विच केस के स्वत: पूर्णता

+0

बस मामले में आप पहले से ही पता नहीं है, आप * * ग्रहण आप के लिए प्रत्येक 'case' बयान में भरने के लिए (सिर्फ' टाइप case' और फिर Ctrl-Space) जो पहले से ही एक बचाता है प्राप्त कर सकते हैं उचित समय यह आपके द्वारा पहले से उपयोग किए गए मानों को स्वचालित रूप से बहिष्कृत कर देगा लेकिन यह बिल्कुल गारंटी नहीं देता है कि आप एक टेम्पलेट की तरह, जिसे आप सुझा रहे हैं, उसे नहीं भूलेंगे। – MatrixFrog

उत्तर

111

यह उम्र के लिए ग्रहण किया गया है। यह स्वीकार्य रूप से खोजने के लिए थोड़ा मुश्किल है। सबसे पहले

switch (myEnum) { 

} 

उस समय के साथ शुरू, अपने कर्सर आमतौर पर बयान ब्लॉक {} अंदर होगा। आप switch कीवर्ड के साथ लाइन के लिए वापस अपने cusror रख दिया और Ctrl + दबाएँ और जोड़ें लापता मामले बयान चयन करने के लिए की जरूरत है। इस तरह यह किसी भी संभावित case डालेगा।

alt text

आप सहज इस विकल्प के रूप में अच्छी अंदर बयान ब्लॉक {} उपलब्ध होने की उम्मीद थी, लेकिन कोई।


अद्यतन: ग्रहण केपलर के बाद से (या शायद पहले से ही जूनो, लेकिन यह इतना असुरक्षित है कि मैं वास्तव में कभी नहीं यह प्रयोग किया जाता है), इस विकल्प के माध्यम से अंत में उपलब्ध Ctrl + बयान के अंदर है ब्लॉक भी।

enter image description here

+1

ग्रहण में इतनी सारी विशेषताएं हैं जो बहुत ही भयानक हैं लेकिन खोजने में मुश्किल हैं। क्या कोई अच्छा त्वरित संदर्भ है? हाल ही में एक एसओ थ्रेड था जिसमें बहुत अच्छी टिप्स थीं। –

+4

@ जोन: http://stackoverflow.com/questions/54886/hidden-features-of-eclipse – BalusC

+3

धन्यवाद! इस जवाब ने मुझे नेटबीन के लिए एक समान तकनीक खोजने में मदद की। 'स्विच (myEnum)' टाइप करने के बाद, अपना कर्सर '('' के अंदर रखें और" अनुपस्थित केस क्लॉज "के विकल्प के लिए Alt + Enter दबाएं।" –

0

आप अपने स्वयं के कोड टेम्पलेट्स का उपयोग कर जोड़ सकते हैं: विंडोज-> प्राथमिकताएं-> जावा-> संपादक-> टेम्पलेट्स।

एक बार जब आप कोड टेम्पलेट जोड़ते हैं, तो इसे अद्वितीय बनाने के लिए टेम्पलेट नाम के पर्याप्त वर्ण टाइप करें; CTRL + स्पेस टाइप करें; और आपका परिभाषित कोड टेम्पलेट नाम वर्णों को प्रतिस्थापित करेगा।

स्विच के लिए टेम्पलेट ग्रहण गैलीलियो में पूर्वनिर्धारित है। sw + CTRL + स्पेस आपको एक स्विच स्टेटमेंट देना चाहिए। स्विच-एनम संयोजन देने के लिए आपको मौजूदा टेम्पलेट को अनुकूलित करना पड़ सकता है।

3

मुझे नहीं पता कि टेम्पलेट के रूप में ऐसा करना संभव है, क्योंकि टेम्पलेट को यह जानना होगा कि आप किस एनम प्रकार का उपयोग कर रहे थे। लेकिन आप अपने लिए कथन मुद्रित करने के लिए एक छोटी सी स्क्रिप्ट लिख सकते हैं, और उसके बाद बस अपने आउटपुट को अपनी स्रोत फ़ाइल में कॉपी कर सकते हैं। SwitchWriter.printSwitchStatement("action", java.awt.Desktop.Action.class) की

public class SwitchWriter { 
    public static void printSwitchStatement(String varName, Class<?> E) { 
    System.out.format("switch(%s) {\n", varName); 
    for (Object o : E.getEnumConstants()) { 
     System.out.format("case %s:\n // TODO: Auto-generated switch statement stub\n break;\n", o); 
    } 
    System.out.println("default:\n // TODO: Auto-generated switch statement stub\n}"); 
    } 
} 

आउटपुट:

switch(action) { 
case OPEN: 
    // TODO: Auto-generated switch statement stub 
    break; 
case EDIT: 
    // TODO: Auto-generated switch statement stub 
    break; 
case PRINT: 
    // TODO: Auto-generated switch statement stub 
    break; 
case MAIL: 
    // TODO: Auto-generated switch statement stub 
    break; 
case BROWSE: 
    // TODO: Auto-generated switch statement stub 
    break; 
default: 
    // TODO: Auto-generated switch statement stub 
} 
संबंधित मुद्दे