Java Wrapper Klasse


Java Wrapper Klasse

Wrapper-klasse bied 'n manier om primitiewe datatipes ( int, boolean, ens..) as objekte te gebruik.

Die tabel hieronder toon die primitiewe tipe en die ekwivalente omhulklas:

Primitive Data Type Wrapper Class
byte Byte
short Short
int Integer
long Long
float Float
double Double
boolean Boolean
char Character

Soms moet jy wrapperklasse gebruik, byvoorbeeld wanneer jy met versamelingsobjekte werk, soos ArrayList, waar primitiewe tipes nie gebruik kan word nie (die lys kan net voorwerpe stoor):

Voorbeeld

ArrayList<int> myNumbers = new ArrayList<int>(); // Invalid
ArrayList<Integer> myNumbers = new ArrayList<Integer>(); // Valid


Die skep van wikkelvoorwerpe

Om 'n wikkelvoorwerp te skep, gebruik die wikkelklas in plaas van die primitiewe tipe. Om die waarde te kry, kan jy net die voorwerp druk:

Voorbeeld

public class Main {
  public static void main(String[] args) {
    Integer myInt = 5;
    Double myDouble = 5.99;
    Character myChar = 'A';
    System.out.println(myInt);
    System.out.println(myDouble);
    System.out.println(myChar);
  }
}


Aangesien jy nou met voorwerpe werk, kan jy sekere metodes gebruik om inligting oor die spesifieke voorwerp te kry.

Byvoorbeeld, die volgende metodes word gebruik om die waarde te kry wat met die ooreenstemmende omhulvoorwerp geassosieer word: intValue(), byteValue(), shortValue(), longValue(), floatValue(), doubleValue(), charValue(), booleanValue().

Hierdie voorbeeld sal dieselfde resultaat as die voorbeeld hierbo lewer:

Voorbeeld

public class Main {
  public static void main(String[] args) {
    Integer myInt = 5;
    Double myDouble = 5.99;
    Character myChar = 'A';
    System.out.println(myInt.intValue());
    System.out.println(myDouble.doubleValue());
    System.out.println(myChar.charValue());
  }
}

Nog 'n nuttige metode is die toString()metode, wat gebruik word om wikkelvoorwerpe na snare om te skakel.

In die volgende voorbeeld skakel ons an Integerna 'n om String, en gebruik die length()metode van die Stringklas om die lengte van die "string" uit te voer:

Voorbeeld

public class Main {
  public static void main(String[] args) {
    Integer myInt = 100;
    String myString = myInt.toString();
    System.out.println(myString.length());
  }
}