2011-11-29 35 views
19

मैं इस होमवर्क के लिए एक सरल कैलकुलेटर बना रही हूँ, और जब 0.चेक अगर एक डबल जावा

से विभाजित जावा "इन्फिनिटी" लौटा रहा है मैं कुछ त्रुटि संदेश प्रदर्शित करने के लिए की जरूरत है अनंत है, जब मैं अनंत मिल । POSITIVE_INFINITY और NEGATIVE_INFINITY: समस्या मैं कैसे हालत क्या करना

double result; 
result = 4/0; 
//if result == infinity then some message - need help with this 
+1

पकड़ [' ArithmeticException'] (http://docs.oracle.com/javase/1.4.2/docs/api/java/lang कोशिश /ArithmeticException.html) जांचें कि divisor शून्य है या नहीं। त्रुटि संदेश दिखाओ। – Nishant

+0

क्या कोई कारण है कि आप केवल पहले स्थान पर विभाजन को रोकने के बजाय अनंतता प्राप्त करना चाहते हैं? – Toomai

+0

4/0 जावा के लिए अनंत है :) –

उत्तर

37

आप Double.isInfinite (डबल)

यहाँ अपवाद कहा जाता है त्रुटियों की double doc

+0

जो करेंगे, धन्यवाद। 2 मिनट में स्वीकार करें :) –

1

कृपया देखें कि क्या वह बराबर Double.POSITIVE_INFINITY

को
double result; 
result = 4.0/0.0; 
+0

मेरा मानना ​​है कि वह यही नहीं चाहता है। वह एक त्रुटि देखना चाहता है। –

+0

हाँ, शायद .... – gd1

1

Double कक्षा में अनंत के लिए दो क्षेत्रों रहे हैं पता नहीं है है जिसे आप जांच सकते हैं।

नोट शून्य से है कि पूर्णांक विभाजन फेंक एक ArithmeticException इस प्रकार आपके लाइन होना चाहिए था 4.0/0, 4/0.0 या 4.0/0.0 4 के बाद से और 0 पूर्णांक हैं और इस प्रकार पूर्णांक गणित में परिणाम।

5

उपरोक्त कोड का उत्पादन

ArithmeticException:/by zero 

आप एक आज़माएं/कैच ब्लॉक में इस अपवाद पकड़ कर सकते हैं।

-1

इस तरह का उपयोग कर सकते हैं। आप इस अपवाद को पकड़ने के लिए प्रयास-पकड़ ब्लॉक का उपयोग कर सकते हैं।

try{ 
     result = 4/0; 
} 
catch(ArithmeticException e){ 
    System.out.println("You divided by zero"); 
} 

आप अपवाद हैंडलिंग here के बारे में पढ़ सकते हैं।

+0

यदि आप केवल एक विशेष खोज रहे हैं तो सामान्य अपवादों को न पकड़ें। – Bobby

+0

अभी तक बेहतर है, जब एक साधारण परीक्षण बेहतर होगा तो अपवाद नहीं उठाएं। – giusti

0

जेसेक Kwiecień इस कोड

double result; 
try{ 
    result=4.0/0.0; 
}catch(ArithmeticException e){ 

    System.out.println("Math error "+ e.getMessage()) 
} 

`

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