Otomatik Kutulama ve Kutudan Çıkarma
Otomatik dönüştürme kuralları
Otomatik Kutulama ve Kutudan Çıkarma, CoddyKit'te ücretsiz bir Java Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Java Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Java Academy kursu toplamda 4 dersten oluşur.
Otomatik Dönüştürme
Otomatik kutulama, Java'nın bir ilkel türü otomatik olarak sarmalayıcı nesnesine dönüştürmesidir. Kutudan çıkarma ise bunun tersidir; bir sarmalayıcıyı yeniden ilkel türe dönüştürür.
Bu işlem, elle dönüştürme çağrıları yapmadan iki dünyayı birlikte kullanabilmeniz için sessizce gerçekleşir.
Kutulama İş Başında
Bir int değerini Integer değişkenine atamak otomatik kutulamayı tetikler. Derleyici sizin için Integer.valueOf çağrısı ekler.
public class Main {
public static void main(String[] args) {
int primitive = 42;
Integer boxed = primitive;
System.out.println(boxed);
}
}Kutudan Çıkarma İş Başında
Bir Integer değerini int değişkenine atamak kutudan çıkarmayı tetikler. Derleyici, arka planda sizin için intValue çağrısı ekler.
public class Main {
public static void main(String[] args) {
Integer boxed = 99;
int primitive = boxed;
System.out.println(primitive);
}
}Koleksiyonlarda Kutulama
Otomatik kutulamayı en sık, ilkel türleri bir koleksiyona eklerken görürsünüz. list.add(5) yazdığınızda Java, 5 değerini otomatik olarak bir Integer içine kutular.
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Integer> nums = new ArrayList<>();
nums.add(1);
nums.add(2);
int first = nums.get(0);
System.out.println(first);
}
}Aritmetik İşlemler Kutudan Çıkarır
Sarmalayıcı nesneler üzerinde matematik işleçlerini kullandığınızda Java önce onları ilkel türlere dönüştürerek kutudan çıkarır, işlemi yapar ve ardından sonucu yeniden kutulayabilir.
Aşağıda iki Integer değeri, ikisi de kutudan çıkarılarak toplanır.
public class Main {
public static void main(String[] args) {
Integer a = 10;
Integer b = 32;
int sum = a + b;
System.out.println(sum);
}
}İlkel Türleri ve Sarmalayıcıları Birlikte Kullanma
Bir ifadede ilkel türü ve sarmalayıcıyı serbestçe birlikte kullanabilirsiniz. Hesaplama sırasında her iki tarafın da ilkel tür olması için Java sarmalayıcının kutusundan çıkarır.
public class Main {
public static void main(String[] args) {
Integer wrapped = 7;
int raw = 3;
int product = wrapped * raw;
System.out.println(product);
}
}Yöntem Çağrılarında Kutulama
Otomatik kutulama, yöntem bağımsız değişkenleri için de geçerlidir. Object veya bir sarmalayıcı bekleyen bir yöntem, ilkel bir tür alabilir; Java bu değeri aktarırken kutular.
public class Main {
static void show(Object value) {
System.out.println("Got: " + value);
}
public static void main(String[] args) {
show(123);
show(true);
}
}Gizli Maliyet
Otomatik kutulama kullanışlıdır, ancak ücretsiz değildir. Her kutulama bir nesne oluşturur ve yoğun döngüler kısa ömürlü milyonlarca nesne oluşturabilir.
Performansın kritik olduğu sayısal döngülerde sarmalayıcılar yerine doğrudan ilkel türlerle çalışın.
public class Main {
public static void main(String[] args) {
long total = 0;
for (int i = 0; i < 5; i++) {
total += i;
}
System.out.println(total);
}
}valueOf ile Yeni Nesne Oluşturma
Otomatik kutulama, -128 ile 127 arasındaki küçük değerleri önbelleğe alan Integer.valueOf yöntemini kullanır. new Integer(...) çağrısı ise her zaman yeni bir nesne oluşturur ve artık kullanımdan kaldırılmıştır.
Otomatik kutulamanın işini yapmasına izin vermeyi tercih edin.
public class Main {
public static void main(String[] args) {
Integer cached = Integer.valueOf(50);
System.out.println(cached);
}
}Üçlü İfadeler ve Kutulama
İnce bir kural vardır: Üçlü bir ifadede dallardan biri ilkel tür, diğeri sarmalayıcıysa Java her ikisini ortak bir ilkel türe dönüştürerek kutudan çıkarabilir.
Bu çoğunlukla güvenlidir; ancak beklemediğiniz dönüşümlerin tetiklenebileceğini unutmayın.
public class Main {
public static void main(String[] args) {
boolean flag = true;
Integer result = flag ? 1 : 2;
System.out.println(result);
}
}Ne Zaman Yararlıdır
Otomatik kutulama, ilkel türleri genel türlerle ve koleksiyonlarla birlikte kullanırken kodu okunabilir kılmak için vardır. Bilinçli kullanıldığında gereksiz ayrıntıları ortadan kaldırır. Yoğun döngülerde dikkatsizce kullanıldığında ise performansı düşürür.
Hızlı Kontrol
Otomatik kutulama kurallarını ne kadar kavradığınızı kontrol edin.
Özet
Otomatik kutulama ve kutudan çıkarmanın nasıl çalıştığını öğrendiniz:
- Otomatik kutulama,
valueOfkullanarak ilkel türü sarmalayıcıya dönüştürür - Kutudan çıkarma,
intValuegibi yöntemleri kullanarak sarmalayıcıyı yeniden ilkel türe dönüştürür - Bu işlemler atamalarda, koleksiyonlarda, aritmetik işlemlerde ve yöntem çağrılarında gerçekleşir
- Kullanışlıdır ancak nesneler oluşturur; bu nedenle yoğun döngülerde kaçının
Sıkça Sorulan Sorular
“Otomatik Kutulama ve Kutudan Çıkarma” dersi ücretsiz mi?
Evet — “Otomatik Kutulama ve Kutudan Çıkarma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Java Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Java Academy kursu toplamda 4 dersten oluşur.
“Otomatik Kutulama ve Kutudan Çıkarma” dersinde ne öğreneceğim?
Otomatik dönüştürme kuralları Java Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Java Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Java Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“Otomatik Kutulama ve Kutudan Çıkarma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Java Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Java Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- İlkel ve Sarmalayıcı Türler
- Otomatik Kutulama ve Kutudan Çıkarma
- Ayrıştırma ve Valueof
- Otomatik Kutulamanın Tuzakları