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.