java - Why does the Math.round(float f) method in Android check for NaN? -


इस सवाल का पहले से ही एक उत्तर है: < / P>

  • 8 जवाब

मैं < कोड> गणित एंड्रॉइड फ़्रेमवर्क में स्रोत और यह है कि राउंड () विधि कैसा दिखता है:

  सार्वजनिक स्थिर इंराउंड (फ्लोट एफ) { // NaN के लिए चेक करें यदि (च! = एफ) {वापसी 0; } वापसी (इंट) मंजिल (एफ + 0.5 एफ); }  

मैं सफलता के बिना पहले जांच के मुताबिक अपने सिर को लपेटने की कोशिश कर रहा हूं। कैसे च खुद से अलग हो सकता है? मैं किसी भी टेस्ट केस के बारे में सोच भी नहीं सकता जो यह किसी भी अलग-अलग बना देगा ... कोई भी विचार?

कैसे खुद से अलग हो सकता है?

यदि f एक नाएन है तो यह अन्य नाएन सहित सभी फ्लोटों से भिन्न के रूप में परीक्षण करेगा। यह परिभाषा है से:

"यदि कोई ऑपरेंड नाएन है, तो == का नतीजा झूठा है, लेकिन इसका परिणाम है! = सच है। वास्तव में, परीक्षण x! = X सच है अगर और केवल अगर मूल्य X है नाएन। "

मैं भी किसी भी परीक्षण मामले के बारे में नहीं सोच सकता जो यह किसी भी अलग होगा ... कोई विचार?

एर, फ़्लोट। एनएएन।


Comments

Popular posts from this blog

Removing From ArrayList, In Loop Based On It's Size, But Breaking After Remove Still Gives OutOfBounds -

c# - Reactive Extensions ControlScheduler -

java - Add color code support to a Bukkit plugin -