SORU
26 Ocak 2013, CUMARTESİ


Java Dizeleri ve Tamsayılar boş değerler

public class Test {
    public static void main(String[] args) {

        String s = null;
        String s1 = null;
        Integer i = null;
        Integer i1 = null;

        System.out.println(s i);
        System.out.println(i s);
        System.out.println(s s1);

        try {
            System.out.println(i i1);
        } catch (NullPointerException np) {         
            System.out.print("NullPointerException");       
        }
    }

}

Soru basit: neden son satırında NullPointerException Bir tek alabilirim?

CEVAP
26 Ocak 2013, CUMARTESİ


Kodunuzu iki additive operators farklı kullanır. İlk üç satırı* *16, son bir kullanır numeric addition oysa kullanın.

Dize birleştirme well-defined to turn null into "null":

  • Eğer başvuru dize dönüştürülür null, "null" (dört ASCII karakterlern, , *, *10ul). eğer

Dolayısıyla NPE yok.

Integer iki nesne ekleyerek onları bir arada unboxed olmasını gerektirir. Bu NPE yol açar null başvuru, başvuru yapıldı sonuçları:

  • Eğer r null, kutulama dönüştürme NullPointerException atar

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Elly Awesome

    Elly Awesome

    15 ŞUBAT 2010
  • undrmyumbrellaa

    undrmyumbrel

    25 Temmuz 2012
  • WhtButterflyLiz

    WhtButterfly

    14 NİSAN 2008