Heim > Java > javaLernprogramm > Wie kann ich ein Array als Argumente an eine Java-Methode mit variablen Argumenten übergeben?

Wie kann ich ein Array als Argumente an eine Java-Methode mit variablen Argumenten übergeben?

DDD
Freigeben: 2024-12-08 14:25:10
Original
524 Leute haben es durchsucht

How Can I Pass an Array as Arguments to a Java Method with Variable Arguments?

Übergabe eines Arrays als Argumente an eine Methode mit variablen Argumenten in Java

Problem

Das Ziel besteht darin, eine Java-Methode zu erstellen, die ein Array von Argumenten entgegennimmt und jedes einzelne Argument an eine Methode mit variablen Argumenten übergibt. Das Problem tritt jedoch auf, wenn die Methodensignatur ein Objekt[] anstelle separater Argumente deklariert, was dazu führt, dass das Array als einzelnes Argument behandelt wird.

Lösung

Ja ist es in Java möglich, ein Array als Argumente an eine Methode mit variablen Argumenten zu übergeben. Dies wird durch den syntaktischen Zucker von T... ermöglicht, der T[] entspricht.

Codebeispiel

Das folgende Beispiel veranschaulicht, wie dies erreicht wird:

public static String ezFormat(Object... args) {
    String format = new String(new char[args.length])
        .replace("", "[ %s ]");
    return String.format(format, args);
}
public static void main(String... args) {
    System.out.println(ezFormat("A", "B", "C"));
    // prints "[ A ][ B ][ C ]"
}
Nach dem Login kopieren

Varargs Fallstricke

Passiert Null

Beachten Sie, dass die Übergabe von Null an einen Varargs-Parameter zu unerwartetem Verhalten führen kann. Um Fehler zu vermeiden, können Sie null als Array oder als einzelnes Argument übergeben.

Hinzufügen zusätzlicher Argumente

Beim Übergeben eines Arrays an einen Varargs-Parameter und beim Hinzufügen zusätzlicher Argumente , muss ein neues Array erstellt werden, das sowohl das zusätzliche Argument als auch die ursprünglichen Array-Elemente enthält.

Übergabe eines Arrays von Primitive

Varargs funktioniert nur mit Referenztypen. Um ein Array von Grundelementen zu übergeben, konvertieren Sie sie in ihre entsprechenden Wrapper-Klassen (z. B. int[] in Integer[]).

Das obige ist der detaillierte Inhalt vonWie kann ich ein Array als Argumente an eine Java-Methode mit variablen Argumenten übergeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage