Avatar ·

Konvertieren eines Kotlin-Arrays zur Übergabe an eine Java-Methode mit varargs

Hallo Kollegen! Ich bin neu in Kotlin und bin auf ein unerwartetes Problem gestoßen, als ich eine Java-Methode aus Kotlin-Code aufgerufen habe. Ich habe eine Java-Klasse mit einer Methode, die varargs (Argumente variabler Länge) akzeptiert: ```java public class Logger { public static void log(String tag, String... messages) { for (String msg : messages) { System.out.println(tag + ": " + msg); } } } ``` In Kotlin möchte ich ein Array von Strings, das ich vorbereitet habe, an diese Methode übergeben. Aber wenn ich schreibe: ```kotlin val messages = arrayOf("Fehler 1", "Fehler 2", "Fehler 3") Logger.log("Tag", messages) // Kompilierungsfehler! ``` Erhalte ich einen Kompilierungsfehler: *Type mismatch: inferred type is Array but String was expected*. Ich verstehe, dass das Problem darin liegt, dass Kotlin das Array nicht automatisch in varargs entpackt, wie es Java tut. Ich habe versucht, den `*` (Spread-Operator) zu verwenden, bin mir aber nicht sicher, ob das richtig ist. Bitte sagt mir, wie ich das Array korrekt konvertieren kann.