Désolé si c'est simple. Cela me perturbe depuis un certain temps déjà. Dans le code suivant :
public class Main {
public static void main(String[] args) {
long a = 10000000000L;
System.out.println(a % 10);
}
}
J'obtiens une sortie de 0, ce qui est ce que j'attendais. Mais lorsque je convertis en int comme ceci,
public class Main {
public static void main(String[] args) {
long a = 10000000000L;
System.out.println((int)a % 10);
}
}
J'obtiens 8 comme résultat au lieu de 0. Je ne comprends pas ce qui se passe. Pourquoi 0 se transforme-t-il en 8 après le moulage ?