Tomé este fragmento de código de alguna prueba, usando IDE, lo ejecuté y obtuve un resultado largo, largo, pero la respuesta correcta es Byte, Byte , ¿por qué obtuve un resultado diferente? La pregunta está relacionada con JDK 11
public class Client {
static void doCalc(byte... a) {
System.out.print("byte...");
}
static void doCalc(long a, long b) {
System.out.print("long, long");
}
static void doCalc(Byte s1, Byte s2) {
System.out.print("Byte, Byte");
}
public static void main(String[] args) {
byte b = 5;
doCalc(b, b);
}
}
EDITADO:
El código se tomó aquí: Descripción general de la certificación de Oracle y preguntas de muestra (Página: 13, Pregunta: 5)
long, longen Java8 también FYI ... No estoy seguro de por qué para ser honesto, esperando una respuesta también :)
Byte b = 5;con un capital B.