Il mio codice è simile a questo
import java.util.Scanner;
public class StudentGrades {
public static void main(String[] argv)
{
Scanner keyboard = new Scanner(System.in);
byte q1 = keyboard.nextByte() * 10;
}
}
Mi dà un errore Type mismatch: cannot convert from int to byte.
Perché Java memorizza un operando letterale che è abbastanza piccolo da stare in un byte, in un tipo int? I letterali vengono memorizzati in variabili / registri prima che l'ALU esegua operazioni aritmetiche?