import java.util.*; class ParseInt { static final Scanner input = new Scanner(System.in); /** * Retourne le nombre entier représenté par la chaîne passée en paramètre. * La chaîne peut commencer par un unique caractère optionnel '+' ou '-', et * doit ensuite contenir une suite de chiffres. * * Le résultat est indéterminé si la chaîne ne code pas un entier valide, ou * si l'entier est trop grand ou trop petit pour le type int. */ static int parseInt(String s) { int res; // le résultat boolean neg; // nombre négatif ? int i; // indice de parcours de la chaîne if (s.charAt(0) == '-') { neg = true; i = 1; } else { neg = false; if (s.charAt(0) == '+') i = 1; else i = 0; } res = 0; while (i < s.length()) { res = 10 * res + (s.charAt(i) - '0'); i++; } return neg ? -res : res; } public static void main(String[] args) { String ch; System.out.println("Entrer une suite de nombres..."); while (input.hasNext()) { ch = input.next(); int v = parseInt(ch); System.out.println("\"" + ch + "\" -> " + v); } } }