Est-il OK pour comparer un int et un long en Java
Est-il OK pour comparer un int et un long en Java...
long l = 800L
int i = 4
if (i < l) {
//i is less than l
}
- une raison quelconque, il pourrait ne pas être?
- Ce qui s'est passé lorsque vous avez essayé?
Vous devez vous connecter pour publier un commentaire.
Oui, c'est bien. Le
int
sera convertie implicitement enlong
, qui peut toujours être fait sans aucune perte d'information.int a = Integer.MAX_VALUE; long b = a;
la suite donne de faux.print(a + 1 > b)
Semble la conversion implicite qui se passe aprèsa+1
est stocké comme unint
a + 1
sontint
- de sorte que l'addition arrive dansint
l'arithmétique, puis la conversion delong
, alors la comparaison.Vous pouvez comparer les long et int directement cependant, c'est pas recommandé.
Il est toujours préférable de long cast en entier avant de les comparer tant de valeur peut être au-dessus de int limite
int
pouri
est le mauvais choix, parce que le dépassement ne devrait pas arrivé.