2011-08-25 12 views
90

मैं जानना चाहता हूं कि ग्रहण में एक सशर्त ब्रेकपॉइंट कैसे रखें। मैं की तरह एक कोड है:ग्रहण में सशर्त ब्रेकपॉइंट का उपयोग कैसे करें?

public static void doForAllTabs(String[] tablist){ 
    for(int i = 0; i<tablist.length;i++){ 
-->  doIt(tablist[i]); 
    } 
} 

अब मैं तीर के साथ लाइन पर एक ब्रेकपाइंट रखना चाहते हैं, लेकिन यह ट्रिगर करना चाहते हैं केवल यदि:

tablist[i].equalsIgnoreCase("LEADDELEGATES"); 

उत्तर

143

अपने ब्रेकप्वाइंट रखो। मार्जिन पर ब्रेकप्वाइंट छवि राइट क्लिक करें और चुनें ब्रेकप्वाइंट गुण:

enter image description here

कॉन्फ़िगर शर्त के रूप में आप फिट देखें:

enter image description here

+9

नवीनतम ग्रहण में इन विकल्पों को सीधे ब्रेकपॉइंट्स व्यू में भी शामिल किया गया है। –

+1

धन्यवाद दोस्त! मेरे पूरे समय बचा लिया! :) – MozenRath

+3

वाह! मैं इसका उपयोग कर रहा हूं: 'अगर (शर्त) {System.out.println ("डीबग");} 'और वर्षों के लिए प्रिंट स्टेटमेंट को तोड़ना। – Cruncher

3
Eclipsepedia से कैसे एक सशर्त ब्रेकप्वाइंट स्थापित करने के लिए पर

:

सबसे पहले, किसी दिए गए स्थान पर ब्रेकपॉइंट सेट करें। फिर, बाएं संपादक मार्जिन में ब्रेकपॉइंट पर ब्रेकपॉइंट पर संदर्भ मेनू या ब्रेकपॉइंट्स डीबग परिप्रेक्ष्य में देखें, और ब्रेकपॉइंट की गुणों का चयन करें। डायलॉग बॉक्स में, कंडीशन सक्षम करें चेक करें, और list.size()==0 जैसे मनमाने ढंग से जावा स्थिति दर्ज करें। अब, ब्रेकपॉइंट तक पहुंचने पर प्रत्येक बार अभिव्यक्ति का मूल्यांकन ब्रेकपॉइंट निष्पादन के संदर्भ में किया जाता है, और अभिव्यक्ति के परिणाम पर के आधार पर ब्रेकपॉइंट को या तो अनदेखा या सम्मानित किया जाता है।

अन्य ब्रेकपॉइंट विशेषताओं जैसे हिट गिनती के संदर्भ में स्थितियों को भी व्यक्त किया जा सकता है।

+0

आपके लिंक को '?' एन्कोड नहीं मिला है। कोशिश करें [यह] (http://wiki.eclipse.org/FAQ_How_do_I_set_a_conditional_breakpoint%3F)। – KomodoDave

+0

धन्यवाद, इसकी सराहना करें –

9

doIt(tablist[i]); लाइन पर एक सामान्य ब्रेकप्वाइंट बनाओ

राइट-क्लिक करें -> गुण

जाँच 'सशर्त'

दर्ज tablist[i].equalsIgnoreCase("LEADDELEGATES")

+0

क्या आपको अभिव्यक्ति के अंत में अर्धविराम की आवश्यकता नहीं है? अगर मैं अर्धविराम जोड़ता हूं (और अक्सर तब भी नहीं) तो मैं केवल काम करने के लिए सशर्त ब्रेकपॉइंट प्राप्त कर सकता हूं। – CajunLuke

+3

@CajunLuke वही यहाँ। मैंने अभी इसे 'अंतिम टी [] '(गैर-सामान्य प्रकार) के साथ आज़माया है और' सशर्त ब्रेकपॉइंट में संकलन त्रुटि है '। असल में, मेरी हालत 'बॉन्ड == नल 'है और त्रुटि संवाद में कारण' अवैध असाइनमेंटऑपरेटर' है। _sigh_ कभी-कभी ग्रहण 12 साल पुराने सॉफ़्टवेयर की तुलना में 12 वर्षीय इंसान की तरह व्यवहार करता है। – KomodoDave

2

1.एक कक्षा बनाएं

public class Test { 

public static void main(String[] args) { 
    // TODO Auto-generated method stub 
    String s[] = {"app","amm","abb","akk","all"}; 
    doForAllTabs(s); 

} 
public static void doForAllTabs(String[] tablist){ 
    for(int i = 0; i<tablist.length;i++){ 
     System.out.println(tablist[i]); 
    } 
    } 
} 

2.सहीprintln (tablist [i]) की बाईं ओर क्लिक करें;ग्रहण में -> चयन टॉगल ब्रेकप्वाइंट

3।सहीटॉगल बिंदु पर क्लिक करें->चयनब्रेकप्वाइंट गुण

4.सशर्तचेक बॉक्स की जाँच करें->लिखनेटैब्लिस्ट [i] .equalsIgnoreCase ("amm")पाठ क्षेत्र में->ठीक

5.पर क्लिक करें सही वर्ग पर क्लिक करें->डीबग रूप ->जावा आवेदन