Aug 28, 2011

Autoboxing

Autoboxing is a new feature offered in the Tiger (1.5) release of Java SDK. In short auto boxing is a capability to convert or cast between object wrapper and it's primitive type.
Previously when placing a primitive data into one of the Java Collection Framework we have to wrap it to an object because the collection cannot work with primitive data. Also when calling a method that requires an instance of object than an int or long, than we have to convert it too.
But now, starting from version 1.5 we were offered a new feature in the Java Language, which automate this process, this is call the Autoboxing. When we place an int value into a collection it will be converted into an Integer object behind the scene, on the other we can read the Integer value as an int type. In most way this simplify the way we code, no need to do an explisit object casting.
Here an example how it will look like using the Autoboxing feature:

public static void main(String[] args)
{
    Map<String, Integer> map = new HashMap<String, Integer>();

    // Here we put an int into the Map, and it accepted
    // as it will be autoboxed or converted into the wrapper
    // of this type, in this case the Integer object.
    map.put("Age", 25);

    // Here we can just get the value from the map, no need
    // to cast it from Integer to int.
    int age = map.get("Age");

    // Here we simply do the math on the primitive type
    // and got the result as an Integer.
    Integer newAge = age + 10;
}

0 comments :

Post a Comment