Ich habe versucht, folgenden Code zu kompilieren, aber erhielt FehlerMehrdeutigkeit Fehler während Überlastung var args Methode und Wrapper-Methoden in Java
static void test(long... x)
{
System.out.println("long...");
}
static void test(Integer... x)
{
System.out.println("Integer...");
}
public static void main(String [] args) {
int no=5;
test(no,no);//getting error at this point in eclipse 'The method test(long[]) is ambiguous '
}
ich donot wissen, warum es nicht eindeutig ist. bedeutet, wenn ich einen int
Wert übergebe es sollte Auto-Box und test(Integer..x)
sollte aufgerufen werden..auf ähnliche Linie test(long..x)
sollte aufgerufen werden..das ist mein Verständnis..kann jemand erklären, warum es mehrdeutig ist?
Welche JDK-Version verwenden Sie? Und was passiert, wenn Sie es von der Kommandozeile aus kompilieren? Bitte überprüfen Sie, ob Sie nicht davon gebissen sind: http://stackoverflow.com/a/7689819/2231632 – prabugp