Classes d'encapsulation Java
Classes d'encapsulation Java
Les classes wrapper permettent d'utiliser des types de données primitifs ( int
, boolean
, etc.) comme objets.
Le tableau ci-dessous montre le type primitif et la classe wrapper équivalente :
Primitive Data Type | Wrapper Class |
---|---|
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
boolean | Boolean |
char | Character |
Parfois, vous devez utiliser des classes wrapper, par exemple lorsque vous travaillez avec des objets Collection, tels que ArrayList
, où les types primitifs ne peuvent pas être utilisés (la liste ne peut stocker que des objets) :
Exemple
ArrayList<int> myNumbers = new ArrayList<int>(); // Invalid
ArrayList<Integer> myNumbers = new ArrayList<Integer>(); // Valid
Création d'objets wrapper
Pour créer un objet wrapper, utilisez la classe wrapper au lieu du type primitif. Pour obtenir la valeur, vous pouvez simplement imprimer l'objet :
Exemple
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);
}
}
Puisque vous travaillez maintenant avec des objets, vous pouvez utiliser certaines méthodes pour obtenir des informations sur l'objet spécifique.
Par exemple, les méthodes suivantes sont utilisées pour obtenir la valeur associée à l'objet wrapper correspondant : intValue()
, byteValue()
, shortValue()
, longValue()
,
floatValue()
, doubleValue()
, charValue()
,
booleanValue()
.
Cet exemple affichera le même résultat que l'exemple ci-dessus :
Exemple
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());
}
}
Une autre méthode utile est la toString()
méthode , qui est utilisée pour convertir des objets wrapper en chaînes.
Dans l'exemple suivant, nous convertissons an Integer
en a String
et utilisons la length()
méthode de la String
classe pour afficher la longueur de la "chaîne":
Exemple
public class Main {
public static void main(String[] args) {
Integer myInt = 100;
String myString = myInt.toString();
System.out.println(myString.length());
}
}