Autoboxing & Unboxing Nedir ?

Selamlar,

 Java Autoboxing ve Unboxing Nedir ?

    Java unboxing ve autoboxing işlemlerini otomatik olarak yapmaktadır. Bunları kullanıcıdan beklememektedir. Lakin bu kavramların ne olduğunu ve nasıl işlediğini bilmekte fayda vardır. 

Wrapper Classlar

* boolean -> Boolean
* char       -> Character
* byte       -> Byte
* short     -> Short
* int         ->Integer
* long      ->Long
* float      ->Float
* double ->Double

Şimdi bir örnek ile bunu anlamaya çalışalım.

public class Main {

public static void main(String[] args) {

ArrayList < String > arraylist = new ArrayList < String > ();


ArrayList < int > arraylist2= new ArrayList < int > (); HATA!!!

//Referans gönderilmesi gerekiyor ama sen int veri tipi göndermissin diyor.
//Arraylistlerde <> arasına referans yazılmalıdır.
//Yukarıdaki Wrapper class'lardan veri tipi değil ilgili sınıfı yazılmalıdır


ArrayList < Integer > arraylist3 = new ArrayList < Integer > ();


for (int i = 0; i < 10; i++) 
{
arraylist3.add(Integer.valueOf(i*4)); //Burasi Autoboxing örneği.
//Yani ilkel olan i veri tipini bir kutuya alıyoruz Wraper seklinde arrayliste atıyoruz..
//DİKKAT BURASI ÖNEMLİ NORMAL YAZILMASI GEREKEN
//arraylist3.add(i*4);
}

for (int i = 0; i < arraylist3.size(); i++) 
{
System.out.println(arraylist3.get(i).intValue());//Burasıda unboxing örneğidir..
//Oradaki integer referansıni aldım onun içindeki int value'yi almak istiyorum
//Normal Yazılması gereken
//System.out.println(i);
}
}
}

Bilgi paylaştıkça artar , sende paylaşarak yardımcı ol.