Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright 2003 Sun Microsystems, Inc.  All Rights Reserved.
   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   *
   * This code is free software; you can redistribute it and/or modify it
   * under the terms of the GNU General Public License version 2 only, as
   * published by the Free Software Foundation.  Sun designates this
   * particular file as subject to the "Classpath" exception as provided
   * by Sun in the LICENSE file that accompanied this code.
  *
  * This code is distributed in the hope that it will be useful, but WITHOUT
  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  * version 2 for more details (a copy is included in the LICENSE file that
  * accompanied this code).
  *
  * You should have received a copy of the GNU General Public License version
  * 2 along with this work; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  *
  * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
  * CA 95054 USA or visit www.sun.com if you need additional information or
  * have any questions.
  */
 
 package sun.misc;

This class contains additional constants documenting limits of the double type.

Author(s):
Joseph D. Darcy
 
 
 public class DoubleConsts {
    
Don't let anyone instantiate this class.
 
     private DoubleConsts() {}
 
     public static final double POSITIVE_INFINITY = ...;
     public static final double NEGATIVE_INFINITY = ...;
     public static final double NaN = ...;
     public static final double MAX_VALUE = ...;
     public static final double MIN_VALUE = ...;

    
A constant holding the smallest positive normal value of type double, 2-1022. It is equal to the value returned by Double.longBitsToDouble(0x0010000000000000L).

Since:
1.5
 
     public static final double  MIN_NORMAL      = 2.2250738585072014E-308;


    
The number of logical bits in the significand of a double number, including the implicit bit.
 
     public static final int SIGNIFICAND_WIDTH   = 53;

    
Maximum exponent a finite double number may have. It is equal to the value returned by Math.ilogb(Double.MAX_VALUE).
 
     public static final int     MAX_EXPONENT    = 1023;

    
Minimum exponent a normalized double number may have. It is equal to the value returned by Math.ilogb(Double.MIN_NORMAL).
 
     public static final int     MIN_EXPONENT    = -1022;

    
The exponent the smallest positive double subnormal value would have if it could be normalized. It is equal to the value returned by FpUtils.ilogb(Double.MIN_VALUE).
 
     public static final int     MIN_SUB_EXPONENT =  -
                                                    ( - 1);

    
Bias used in representing a double exponent.
 
     public static final int     EXP_BIAS        = 1023;

    
Bit mask to isolate the sign bit of a double.
 
     public static final long    SIGN_BIT_MASK   = 0x8000000000000000L;

    
Bit mask to isolate the exponent field of a double.
    public static final long    EXP_BIT_MASK    = 0x7FF0000000000000L;

    
Bit mask to isolate the significand field of a double.
    public static final long    SIGNIF_BIT_MASK = 0x000FFFFFFFFFFFFFL;
    static {
        // verify bit masks cover all bit positions and that the bit
        // masks are non-overlapping
        assert((( |  | ) == ~0L) &&
               ((( & ) == 0L) &&
                (( & ) == 0L) &&
                (( & ) == 0L)));
    }
New to GrepCode? Check out our FAQ X