2017-09-03 3 views
0

Ich habe Methode mit 10+ Parametern eigentlich sollte ich es mit Builder-Muster schreiben. Aber ich denke, es wird ein Durcheinander sein, wenn es nach Kotlin konvertiert wird. Ich frage mich, ob es eine Möglichkeit gibt, Java zu schreiben, die sich leicht wie Kotlin verhalten könnte?Kann Java eine Methode erstellen, die mit Standardargumenten wie Kotlin überlädt?

Wenn wir geschaffen Spaß mit Kotlin wie diese

fun foo(bar: Int = 0, baz: Int) { /* ... */ } 

foo(baz = 1) // The default value bar = 0 is used 

Wie können wir ähnliche Methode in Java geschrieben, ohne jede erdenkliche schreiben?

z.

brauchen nicht

void foo(int bar, int baz){ 
... 
} 

void foo(int baz){ 
int bar = 0; 
} 
+2

ist, zu schreiben: // stackoverflow.com/q/997482/3195526) –

Antwort

3

Nicht wirklich am nächsten, was Sie haben so etwas wie dieses Dies ist ein Kotlin Geschmack Version von [diese Frage] (https

void foo(int bar, int baz){ 
    ... 
} 

void foo(int baz){ 
    foo(0,baz); 
} 
+0

Schöne Antwort, aber was ist, wenn Sie 10+ Params haben. Das werden so viele Methoden sein. – UmAnusorn

+0

Ich bin mir nicht sicher, aber ich denke, wenn Sie sich mit dem dekompilierten Kotlin-Code beschäftigen, werden Sie genau das sehen als (imo) ist, wie kotlin Standardparameter in Bytecode behandelt. –

+0

@umitems IMO Wenn Sie so viele Parameter haben, sollten Sie versuchen, die Methode zu refaktorieren – Mibac

Verwandte Themen