Junior
Referans tiplerini ilkel türe dönüştürme ve tersini nasıl yaparız?
sobes.tech yapay zeka
AI'dan gelen yanıt
Java'da referans tipleri (sarmalayıcılar) ile temel tipler (unboxing) arasındaki dönüşüm otomatik olarak gerçekleşir, ancak açıkça da yapılabilir.
Autoboxing: Temel tipin karşılık gelen referans tipine otomatik dönüşümü.
int primitiveInt = 10;
// Otomatik olarak Integer'a dönüşür
Integer wrapperInt = primitiveInt;
Unboxing: Referans tipinin karşılık gelen temel tipe otomatik dönüşümü.
Integer wrapperInteger = 20;
// Otomatik olarak int'e dönüşür
int primitiveInteger = wrapperInteger;
Açık dönüşüm:
Referans tipinin primitive tipe dönüşümü: intValue(), doubleValue(), vb. metodlar kullanılarak.
Integer wrapperInt = 30;
int primitiveInt = wrapperInt.intValue(); // açık dönüşüm
Double wrapperDouble = 40.5;
double primitiveDouble = wrapperDouble.doubleValue(); // açık dönüşüm
Primitive tipin referans tipine dönüşümü: sınıf yapıcıları veya statik valueOf() metodları kullanılır. valueOf() metodu tercih edilir çünkü değerleri önbelleğe alabilir.
int primitiveInt = 50;
Integer wrapperInt = new Integer(primitiveInt); // yapıcı kullanımı (artık önerilmez)
double primitiveDouble = 60.7;
Double wrapperDouble = Double.valueOf(primitiveDouble); // valueOf() kullanımı
Dönüşüm tabloları:
| Primitive Tip | Referans Tip |
|---|---|
| boolean | Boolean |
| byte | Byte |
| short | Short |
| char | Character |
| int | Integer |
| long | Long |
| float | Float |
| double | Double |