Wrapper class in Java

Filed Under: Java

Wrapper class in java are the Object representation of eight primitive types in java. All the wrapper classes in java are immutable and final.

Java 5 autoboxing and unboxing allows easy conversion between primitive types and their corresponding wrapper classes in java programs.

Wrapper Class in Java

wrapper class in java, wrapper classes in java

Below table shows the primitive types and their wrapper class in java.

Primitive type Wrapper class Constructor Arguments
byte Byte byte or String
short Short short or String
int Integer int or String
long Long long or String
float Float float, double or String
double Double double or String
char Character char
boolean Boolean boolean or String

Why do we need wrapper classes?

I think it was a smart decision to keep primitive types and Wrapper classes separate to keep things simple. We need wrapper classes when we need a type that will fit in the Object-Oriented Programming like Collection classes. We use primitive types when we want things to be simple.

Primitive types can’t be null but wrapper classes can be null.

Wrapper classes can be used to achieve polymorphism.

Here is a simple program showing different aspects of wrapper classes in java.

WrapperClasses.java


package com.journaldev.misc;

import java.util.ArrayList;
import java.util.List;

public class WrapperClasses {

    private static void doSomething(Object obj){
        
    }
    
    public static void main(String args[]){
        int i = 10;
        char c = 'a';
        
        //primitives are simple to use
        int j = i+3;
        
        //polymorphism achieved by Wrapper classes, we can't pass primitive here
        doSomething(new Character(c));
        
        List<Integer> list = new ArrayList<Integer>();
        //wrapper classes can be used in Collections
        Integer in = new Integer(i);
        list.add(in);
        
        //autoboxing takes care of primitive to wrapper class conversion
        list.add(j);
        
        //wrapper classes can be null
        in = null;
    }
}

Comments

  1. rahul says:

    all contents that you can provide is good and very useful when I do my coding.

  2. Manvendra says:

    that was cool information about the wrapper class basics

  3. Neeraj says:

    What does it mean “Wrapper classes can be used to achieve polymorphism” ??

    1. Aliasger says:

      As show in the example the doSomething(Object object) can take any generic parameter since the attribute is of type Object i.e Superclass of all object. This cannot be achieved with primitive data type.

Leave a Reply

Your email address will not be published. Required fields are marked *

close
Generic selectors
Exact matches only
Search in title
Search in content
Search in posts
Search in pages