2011-11-07 18 views
8

मेरे पास यह फ़ंक्शन कुछ मृत कोड के साथ है, जिसे ग्रहण द्वारा चिह्नित किया गया है।ग्रहण अंक कोड कोड के रूप में

मेरे पास दो पंक्तियां हैं जो & बी की जांच करती हैं। बी की जांच करने वाली रेखाएं शून्य के रूप में चिह्नित की जाती हैं।

public int[] runThis(List<Integer> buildIds, List<Integer> scenarios, boolean oflag) { 

    int rating[] = new int[scenarios.size()]; 

    if(buildIds == null) { 
     System.out.println("ERROR - Building ID list is null!"); 
     return null; 
    } 

    if(scenarios == null) { 
     System.out.println("ERROR - Scenario list is null!"); //dead 
     return null; //dead 
    } 

    return rating;  

} 

एलिप्स दो पंक्तियों को मृत के रूप में क्यों बनाता है? कोई मदद? आपके समय के लिए अत्यधिक धन्यवाद।

+8

क्या इस विधि में कोई अन्य कोड है? हो सकता है कि आप पहले 'बी' को संदर्भित कर रहे हैं, जो ग्रहण को बताता है कि इस बिंदु पर' बी' 'शून्य नहीं हो सकता है। उस स्थिति में आपको 'if (b == null) 'लाइन पर" अनावश्यक शून्य जांच "जैसी चेतावनी भी मिलनी चाहिए। –

+1

@ जोचिम +1000। –

+0

मुझे * ग्रहण * के बारे में पता नहीं है लेकिन इंटेलिजे आईडीईए आपके कोड का वास्तविक समय में विश्लेषण कर सकता है और आपको चेतावनी देता है कि कुछ कोड तक पहुंचना असंभव है। आपके मामले में, यदि इंटेलिजे को पता लगाना था कि * बी * कभी * शून्य * नहीं था, तो यह आपको चेतावनी देगा कि इन दो लाइनों को कभी भी नहीं पहुंचाया जा सकता है क्योंकि स्थिति * बी == शून्य ** हमेशा झूठी होती है। – TacticalCoder

उत्तर

15

क्योंकि आपने अपने सरणी कन्स्ट्रक्टर में पहले ही scenarios.size() कहा है। यह गारंटी देता है scenarios शून्य नहीं है या यह उस बिंदु से अपवाद फेंक देगा।

+0

आप सही हैं। धन्यवाद। – jn1kk

संबंधित मुद्दे