Zacznij terazZacznij za darmo

Klasy opakowujące a null

W przeciwieństwie do typów prymitywnych, zmienna klasy opakowującej może być niezainicjalizowana i mieć wartość null. Niezainicjalizowana zmienna prymitywna automatycznie przyjmuje swoją wartość domyślną (w przypadku int jest to 0). Ponieważ klasy opakowujące mogą przechowywać wartość null, możemy sprawdzić, czy zmienna została ustawiona, zanim jej użyjemy – czego nie da się zrobić z typami prymitywnymi. W tym ćwiczeniu zobaczysz różnicę między niezainicjalizowanymi typami prymitywnymi a obiektami klas opakowujących.

To ćwiczenie jest częścią kursu

Typy danych i wyjątki w Javie

Zobacz kurs

Instrukcje do ćwiczenia

  • Zadeklaruj zmienną typu int o nazwie x, ale nie przypisuj jej wartości.
  • Zadeklaruj zmienną typu Integer o nazwie y, ale nie przypisuj jej wartości.
  • Wyświetl wartość x, mimo że jej nie zainicjalizowałeś.
  • Sprawdź, czy y ma wartość null.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

public class NullWithWrappers {

	// Declare a primitive integer called x
	static ____ ____;
	// Declare a wrapper Integer called y
	static ____ ____;

	public static void main(String[] args) {
       	// Display x value
		System.out.____(____);
		System.out.println(y);

		// Check if y has been initialized and is null
		if (____ ____ ____) {
			System.out.println("y is not initialized so take corrective steps here");
		}
	}
}
Edytuj i uruchom kod