2012-04-22 14 views
8

के बराबर है तो मुझे एक समस्या है जो हल करने में आसान लगता है, हालांकि मुझे वाक्यविन्यास पर यकीन नहीं है।जावा - यदि कथन ए बी प्लस या माइनस 2

मुझे एक if/else कथन चलाने की आवश्यकता है, लेकिन मुझे यकीन नहीं है कि शर्तों को सही तरीके से कैसे सेट करें।

बुरा कोड:

if (float_a = float_b or is within +-2 of it) { 
    do this 
} 
else { 
    do that 
} 

इस को पूरा करने का सबसे सरल तरीका क्या है?

+0

'<=' and '> = 'ऑपरेटरों पर एक कठिन नज़र डालें। बेशक, फ्लोट्स के साथ, राउंडिंग आपके लिए यहां एक समस्या हो सकती है या नहीं। – Thilo

उत्तर

15

आप Math.abs उपयोग कर सकते हैं:

if (Math.abs(float_a-float_b) <= 2) { ... } 

इसका मतलब यह है "अगर ए और बी के बीच पूर्ण अंतर 2 के भीतर है ..."

+1

यह सही है, धन्यवाद! जब टाइमर समाप्त होता है तो मैं आपको स्वीकार किए गए उत्तर को टॉस करूंगा। चीयर्स – Numpty

8
if(Math.abs(float_a - float_b) <= 2) { 
    //do this 
} 
else { 
    //do that 
}