Bilmek istediğin her şeye ulaş

Bir fonksiyondan birden fazla değer döndürmek için ne kullanabilirim (fonksiyonum AsyncTask altında doInBackground içinde)?

Basit degerler icin araya char veya byte cinsinden deger ekleyip split ile bolup hizli bir sekilde ilerleyebilirsin. Donecek degerler object veya buyuk boyutlardaki degerler ise class oluturup return degerini bu class ile tanimlayip classtan object veya degerleri cekebilirsin.

Kullanım yerine göre out yapısını kullanabilirsin.

public string inploidCevapAl(int id, out string yazaradi) {
yazaradi = "ibrahim";
....
return verilenCevap.toString();
}

function'ın cağırılacağı zaman inploid(1,out yazarkim) şeklinde yazarkim olarak string bir değişkeni gönderirsen function return olduktan sonra yazarkim değişkenine ibrahim eklendiğini görebilirsin. ama ilk mesajımda dediğim gibi ayrı sınıflar oluşturup set etmen daha güzel olur.
  • Paylaş
Javada bir fonksiyondan birden fazla cevap donmesi ihtiyaci oluyorsa kurgu yanlis kurulmus demektir. Dondurulecek degerler bir object icine konulup object dondurulebilir.
  • Paylaş
Bir Fonksiyon Asenkron olarak ilerliyor ise yada asenkron çağrılmış ise geriye değer almak problem yaşatabilir. En pratik çözüm Global bir field yada birden fazla ise field lara a fonksiyon içinde oluşan değeri atamak olacaktır.
  • Paylaş
Sonraki Soru
HESAP OLUŞTUR

İstatistikler

226 Görüntülenme5 Takipçi3 Yanıt