C'est une chose très simple à faire, mais il faut savoir si on désire tronquer le nombre (retrancher la valeur après le point décimal) ou bien l'arrondir. Un exemple :
double prix = 4.95; int a = (int)prix; // a vaudra 4 int b = (int)Math.round(prix); // b vaudra 5 long c = Math.round(prix); // c vaudra 5
Le transtypage, déclenché par le mot clé int entre parenthèses devant l'appel à Math.round, est nécessaire dans le deuxième cas, puisque la version de la méthode round qui prend un double en paramètre retourne un long. Sans le transtypage, le compilateur générera une erreur puisque l'opération pourrait entraîner une perte de précision sur des valeurs élevées de prix.