SORU
26 EKİM 2010, Salı


Tek boş tartışma çağrısı Java varargs yöntemi?

Eğer sırasında Java bir yöntem varsa foo(Object ...arg) ve foo(null, null), arg[0] arg[1] İ de var nulls olarak arayın. Ama eğer foo(null), arg ararsam boş kendisidir. Neden böyle oluyor?

Nasıl foo foo.length == 1 && foo[0] == null true böyle mi demeliyim?

CEVAP
26 EKİM 2010, Salı


Sorun edebi null kullandığınızda, Java olması gerekiyordu ne olduğunu bilmiyor. Boş bir Nesne olabilir, bir Nesne veya null bir dizi olabilir. Tek bir değişken için ikinci varsayar.

İki seçeneğiniz var. Boş açıkça veya yöntem türü kesin belirlenmiş bir değişken kullanarak Nesne aramak için dökme. Aşağıdaki örneğe bakın:

public class Temp{
   public static void main(String[] args){
      foo("a", "b", "c");
      foo(null, null);
      foo((Object)null);
      Object bar = null;
      foo(bar);
   }

   private static void foo(Object...args) {
      System.out.println("foo called, args: "   asList(args));
   }
}

Çıkış:

foo called, args: [a, b, c]
foo called, args: [null, null]
foo called, args: [null]
foo called, args: [null]

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Flohoo

    Flohoo

    12 EYLÜL 2009
  • K-391

    K-391

    23 EKİM 2012
  • Tomas N

    Tomas N

    14 Kasım 2010