search
Giriş
Merhabalar arkadaşlar, Sitemizi programlama ile ilgilenen bütün arkadaşlarımızın Türkçe içerik konusunda çektiği sıkıntılar düşünülerek soru/cevap şeklinde bir etkileşimde bulunabilmesi için kurduk. Umuyoruz hepimiz için güzel bir deneyim olur. Hasscript Ekibi
1 oy
45 gösterim
Merhabalar,

Ben if else-if ile bir değeri kontrol ettiriyorum, else kısmında diğer kontrol ettirdiğim değerlerden farklı veya null değer dönebiliyor.

a.equals("b") olarak yaptığımda null gelirse patlıyor.

"b".equals(a) olarak yapınca burda patlamıyor sonuc alabiliyorum.

Acaba bu ikisi arasında fark nedir yardımcı olabilir misiniz?
Java kategorisinde 222 puan

1 cevap

1 oy
Sorununu tam anlamak için null nedir, java'da nasıl yönetilir bilgin olmalı biraz. Ama güzel bir soru.

String str = null; // kodunu yazdığın zaman elinde bir pointer var adı str ve hiçbiryeri göstermiyor. Hiçbiryeri göstermeyen bir pointer üzerinde equals metodunu çalıştırmak istiyorsun. O zaman null pointer alırsın.

Eğer str değerini dışarıdan alıyorsan null gelme ihtimali hep vardır. Her zaman NullPointerException alma ihtimalin var.

str.equals("kenan") // str null olduğu için patlar.

"kenan" demek hafızada bir string oluşturur. Direk elle oluşturduğun için boş gelme ihtimali yok. "kenan".equals(str) dediğin zaman nokta "." işaretinin sol tarafında hiç null değer olmayacağı için NullPointerException alma ihtimalini her zaman sıfırlamış olursun. str değeri null olması olmaması bir sorun ifade etmez.
4.6k puan

İlgili sorular

0 oy
1 cevap 6.2K gösterim
6.2K gösterim
Java'da string, integer vb. objelerde eşitlik kontrolü yapılırken kullanılan bu fonksiyonların farkı nedir? if (object1.equals(object2)){ } if (object1 == object2){ }
24 Aralık 2015 Java kategorisinde tolgacelik.art 1.9k puan sordu
0 oy
1 cevap 415 gösterim
415 gösterim
Java programa dilinde Error ve Exception kavramları diğer dillerde de var mı öncelikle? İkinci olarak bu iki teri arasındaki temel ve genel farklar nelerdir?
1 Eylül 2018 Java kategorisinde tolgacelik.art 1.9k puan sordu
0 oy
1 cevap 1K gösterim
1K gösterim
Java programlamada dilinde erişim belirteçleri olan default, public, protected ve private aralarındaki farklar nelerdir? Sınıf (class), Interface ve kalıtım (inheritance) uygulanırken nasıldır?
9 Ocak 2017 Java kategorisinde tolgacelik.art 1.9k puan sordu
0 oy
1 cevap 1.4K gösterim
1.4K gösterim
Bir maven uygulamasını ayağa kaldırırken, JDK yerine JRE seçildiği için kalkmıyordu. Bu ikisinin ne farkı var acaba acıklayabilir misiniz?
18 Aralık 2016 Java kategorisinde tolgacelik.art 1.9k puan sordu
0 oy
1 cevap 76 gösterim
76 gösterim
Bu döngülerin ne farkı vardır neden kullanmam gerekir?
27 Ekim 2016 Genel Kavramlar kategorisinde tolgacelik.art 1.9k puan sordu