Java uses simple or primitive data types, such as int, char and Boolean etc. These data types are not part of the object hierarchy. They are passed by value to methods and cannot be directly passed by reference. However, at times there is a need to create an object representation of these simple data types. To address this need, Java provides classes that correspond to each of these simple types. These classes encapsulate, or wrap, the simple data type within a class. Thus, they are commonly referred to as wrapper classes.

Wrapper classes corresponding to respective simple data types are as given in table below.

Primitive Data Types

Wrapper class

byte

Byte

short

Short

int

Integer

long

Long

char

Character

float

Float

double

Double

boolean

Boolean

void

Void

This sample code shows the use of Character wrapper class:

 public class IsDemo {

  public static void main(String[] args) {

    char a[] = {'a','b','5','?','A',' '};

    for(int i=0;i<a.length;i++){

      if(Character.isDigit(a[i]))
        System.out.println(a[i] + "is a digit ");
      if(Character.isLetter(a[i]))
        System.out.println(a[i] + "is a letter ");
      if(Character.isWhitespace(a[i]))
        System.out.println(a[i] + "is a White Space ");
      if(Character.isLowerCase(a[i]))
        System.out.println(a[i] + "is a lower case ");
      if(Character.isLowerCase(a[i]))
        System.out.println(a[i] + "is a upper case ");
    }

  }
}