int say1=Integer.parseInt(txt1.getText()); int say2=Integer.parseInt(txt2.getText());

b1.setText(String.valueOf(say1+say2));

txt1 bos bırakıldıgında butona tıkladıgımda hata veriyor onu nasıl sına ya bilirim bos burakıldıgında 0 donmesi gerekiyor o kodu nasıl yazabilirim.

soruldu: 17 Şub '15, 17:35

engineers's gravatar image

engineers
356517091
cevap kabul oranı: 23%


Null check yapıp, öyle değer atamalarını yaparsan hatayı almayacağını düşünüyorum.

int say1 = 0;
int say2 = 0;
if(!"".equals(txt1.getText()) && !"".equals(txt2.getText())){
  say1 = Integer.parseInt(txt1.getText()); 
  say2 = Integer.parseInt(txt2.getText());
}
b1.setText(String.valueOf(say1+say2));

isterseniz !"" yerine StringUtils.isNotBlank kullanabilirsiniz. gibi..

permanent link

cevaplandı: 17 Şub '15, 17:58

Turgay%20Can's gravatar image

Turgay Can
8.4k63799
cevap kabul oranı: 18%

değiştirildi: 18 Şub '15, 06:10

İse yaramadi Bu seferde bos bırakılınca hata verdi yine ve bier sey yazıncada ona hic bakmadan sıfır aldı

(17 Şub '15, 19:28) engineers engineers's gravatar image

txt1 boş bırakıldığında txt1.getText() null değilde "" dönüyor olabilir mi?

if(txt1.getText() != null || !txt1.getText().equals("")) { .... .. ..

(18 Şub '15, 02:16) SaRPaRDa SaRPaRDa's gravatar image

Stringlerin kontrolü için StringUtils kullanabilirsin. Çok kullanışlı...

import org.apache.commons.lang3.StringUtils;

if(StringUtils.isEmpty(txt1.getText()) { ...... }

(18 Şub '15, 02:23) SaRPaRDa SaRPaRDa's gravatar image

isEmpty boşluk karakter kontrolünü yapmaaz. isNotBlank daha kullanışlıdır.

Cevabı güncelleyeyim.

(18 Şub '15, 06:08) Turgay Can Turgay%20Can's gravatar image

convertInt metodu yazıp onun içerisinde gerekli kontrollerimizi yapabiliriz.

       int say1 = convertInt(txt1.getText(),0);
       int say2 = convertInt(txt2.getText(),0);
       b1.setText(String.valueOf(say1+say2));

      /**
      * gönderilen değeri intiger 'a çevirir
      * @param value integer e çevrilecek değer
      * @param defaultValue Hata olması durumunda dönmesi gereken değer
      * @return 
      */
     public int convertInt(Object value,int defaultValue)
     {
         if (value == null) {
             return defaultValue;
         }

        try{
            return Integer.parseInt(value.toString());
        }catch(Exception ex)
        {
            return defaultValue;
        }
     }
permanent link

cevaplandı: 18 Şub '15, 02:02

M%C3%BCsl%C3%BCm%20%C3%96ZT%C3%9CRK's gravatar image

Müslüm ÖZTÜRK
10.7k103691
cevap kabul oranı: 28%

Teskkurler herkesin fikri icin ama olmuyor .. if icinde verdigim seye bakmıyor yukarıda int say1=0; koyunca say1 i 0alıyor icin icinde kontrol code bakmıyor program .

(18 Şub '15, 06:31) engineers engineers's gravatar image

bu kod parçasında hata alıyor isen txt1 ve txt2 null demektir. Bu değerler null olduğu içinde getText() metodun hata fırlatıyordur. Aksi bir durumda sorunsuz çalışması gereken bir kod parçasıdır

(18 Şub '15, 08:19) Müslüm ÖZTÜRK M%C3%BCsl%C3%BCm%20%C3%96ZT%C3%9CRK's gravatar image

Yukardaki yöntemlerle sorunun çözülmüş olması lazım. Bence kodun başka bir yerinde mantık hatası olabilir.

(10 Mar '15, 07:52) altan_518 altan_518's gravatar image

Hatan galiba senin txt1.getText().toString(); olarak alıp kontrol yapmaman.

Aslında senin yazdığın kod textFiled dolu olsa bile patlaması lazım nasıl çalışmış anlamadım.

 int say1=Integer.parseInt(txt1.getText()); int say2=Integer.parseInt(txt2.getText());

ki varsayalım böyle hata alımıyorsun @J2EE'nin yazdığı gibi

int say1 = 0;
int say2 = 0;
if(!"".equals(txt1.getText()) && !"".equals(txt2.getText())){
  say1 = Integer.parseInt(txt1.getText()); 
  say2 = Integer.parseInt(txt2.getText());
}else{
b1.setText(String.valueOf(say1+say2));
}

bu şekilde yaptığında sıkıntı çıkmaması lazım.

İyi Çalışmalar

permanent link

cevaplandı: 11 Mar '15, 05:02

Mehmet%20KILIC's gravatar image

Mehmet KILIC
51191422
cevap kabul oranı: 20%

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×1,079
×79

Soruldu: 17 Şub '15, 17:35

Görüntüleme: 641 kez

Son güncelleme: 11 Mar '15, 05:02

powered by BitNami OSQA