Byte, Short, Integer, Long, Float, and Double classes are numeric wrapper classes.
They are all inherited from the Number class.
The Number class is abstract. You cannot create an object of the Number class.
All numeric wrapper classes contain several useful constants.
Their MIN_VALUE and MAX_VALUE constants represent the minimum and maximum values that can be represented by their corresponding primitive type.
For example, Byte.MIN_VALUE constant is -128 and Byte.MAX_VALUE constant is 127.
They have a SIZE constant that represents the size in bits that a variable of the corresponding primitive type occupies. For example, Byte.SIZE is 8 and Integer.SIZE is 32.
The Number class contains six methods.
They are named xxxValue() where xxx is one of the six primitive data types (byte, short, int, long, float, and double).
The return type of the methods is the same as xxx.
For example, the byteValue() method returns a byte, the intValue() method returns an int, etc.
The following snippet shows how to retrieve different primate type values from a numeric wrapper object:
public class Main { public static void main(String[] args) { // Creates an Integer object Integer intObj = Integer.valueOf(100); // Gets byte from Integer byte b = intObj.byteValue(); // Gets double from Integer double dd = intObj.doubleValue(); System.out.println("intObj = " + intObj); System.out.println("byte from intObj = " + b); System.out.println("double from intObj = " + dd); // Creates a Double object Double doubleObj = Double.valueOf("12345.67"); // Gets different types of primitive values from Double double d = doubleObj.doubleValue(); float f = doubleObj.floatValue(); int i = doubleObj.intValue(); long l = doubleObj.longValue(); System.out.println("doubleObj = " + doubleObj); System.out.println("double from doubleObj = " + d); System.out.println("float from doubleObj = " + f); System.out.println("int from doubleObj = " + i); System.out.println("long from doubleObj = " + l); }//from w ww . j a v a 2s. c om }