8 Stimmen

Was ist "String..." in Java?

Mögliches Duplikat:
varargs und das ' '-Argument
Java, 3 Punkte in Parametern

Ich habe diese Definition in meiner Android-Java-Datei gesehen. Sie sieht genauso aus wie String[]. Sind sie unterschiedlich? Ich danke Ihnen.

7voto

Willem Van Onsem Punkte 390288

Es ist die Syntax für das Schreiben der Elemente des Arrays als Parameter

zum Beispiel:

 public String first (String... values) {
     return values[0];
 }

Dann können Sie diese Methode mit first("4","2","5","67")

Der Javacompiler erstellt ein Array mit den Parametern auf

2voto

user1252434 Punkte 2043

Es ist ein vararg, eine variable Anzahl von Argumenten. Im Methodenrumpf wird es als String[] behandelt, aber wenn Sie die Methode aufrufen, können Sie entweder einen String[] angeben oder einfach Ihre Werte aufzählen.

void foo(String... blah) { }

void bar() {
   String[] a = { "hello", "world" };
   foo(a);  // call with String[]
   foo("hello", "world"); // or simply enumerate items
}

Wurde mit Java 5 eingeführt.

1voto

alexg Punkte 2887

Es ist für die Definition einer Methode mit einer variable Anzahl von Argumenten .

0voto

AlexR Punkte 111534

String ist ein String-Typ. String[] ist ein Array von Zeichenketten.

String ... ist ein syntaktischer Zucker namens ellipsis, der in Java 1.5 eingeführt und aus C übernommen wurde. Er kann in Methodendefinitionen verwendet werden und ist eigentlich dasselbe wie array mit nur einem Unterschied. Wenn Methode definiert ist als:

public void foo(String[] arg){}

müssen Sie ihm Array übergeben:

foo(new String[] {"a", "b"});

Wenn die Methode als definiert ist:

public void foo(String arg){}

Sie können es entweder als

foo(new String[] {"a", "b"});

ou

foo("a", "b");

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X