अब तक दिए गए जवाबों के अतिरिक्त ...
कुल चार मूल्य हैं
int i = Integer.MIN_VALUE;
long i = Long.MIN_VALUE;
Integer i = Integer.valueOf(Integer.MIN_VALUE);
Long i = Long.valueOf(Long.MIN_VALUE);
लिपटे हुए मान अलिखित हो जाते हैं इसलिए वे इस अभिव्यक्ति के लिए भी सही हैं।
नोट: Math.abs दस्तावेज़।
सार्वजनिक स्थैतिक int abs (int)
एक इंट वैल्यू का निरपेक्ष मान लौटाता है। यदि तर्क नकारात्मक नहीं है, तो तर्क लौटाया जाता है। यदि तर्क नकारात्मक है, तो तर्क का निषेध लौटा दिया जाता है।
ध्यान दें कि यदि तर्क Integer.MIN_VALUE के मान के बराबर है, तो सबसे नकारात्मक प्रतिनिधित्व योग्य int मान है, परिणाम वही मान है, जो नकारात्मक है।
तथा
सार्वजनिक स्थिर लंबे एब्स (लंबे समय तक)
एक लंबे मूल्य का निरपेक्ष मान लौटाता है। यदि तर्क नकारात्मक नहीं है, तो तर्क लौटाया जाता है। यदि तर्क नकारात्मक है, तो तर्क का निषेध लौटा दिया जाता है।
ध्यान दें कि यदि तर्क Long.MIN_VALUE के मान के बराबर है, तो सबसे नकारात्मक प्रतिनिधित्व करने योग्य लंबा मान है, परिणाम वही मान है, जो नकारात्मक है।
यह आश्चर्यजनक है कि Math.abs एक नकारात्मक संख्या लौटा सकता है। ऐसा या तो इसलिए होता है क्योंकि a) इन मामलों में -MIN_VALUE के लिए कोई सकारात्मक मान नहीं है b) -एक ओवरफ्लो में गणना परिणाम का प्रदर्शन करना ।
ब्याज क्या है क्यों बाइट नहीं करता है। MIN_VALUE, Short.MIN_VALUE ऐसा नहीं करता है। ऐसा इसलिए है क्योंकि इन के लिए -प्रकार बदल जाता है intऔर इस प्रकार कोई अतिप्रवाह नहीं होता है।
Character.MIN_VALUE को कोई समस्या नहीं है क्योंकि यह 0 है।
फ्लोट .IN_VALUE और Double.MIN_VALUE का एक अलग अर्थ है। ये शून्य से अधिक सबसे छोटे प्रतिनिधित्व योग्य मूल्य हैं। इस प्रकार उनके पास वैध नकारात्मक मूल्य हैं जो स्वयं नहीं हैं।