Comment puis-je convertir scanner d'entrée en un nombre entier?

En Java, comment, si possible, puis-je convertir numérique scanner d'entrée (par exemple 2 ou 87) dans une variable de type entier? Ce que je suis en utilisant le produit maintenant le message d'erreur:

    Exception in thread "main" java.lang.NumberFormatException: null
    at java.lang.Integer.parseInt(Unknown Source)
    at java.lang.Integer.valueOf(Unknown Source)
    at diDecryption.Didecryption.main(Didecryption.java:226)

Et c'est le code que j'utilise pour le faire (reconstitué, il est partie d'un grand programme):

    System.out.println("Enter first number");
    Scanner sc=new Scanner(System.in); 
    String name=sc.next();
    int result = Integer.valueOf(name);
    if (result / 2 == 1){
    System.out.println("a");

Le but du programme est de décoder un message chiffré. L'entrée est numérique, et si je retire le string en int convertisseur, la division ne fonctionne pas. Comment puis-je résoudre ce problème?

  • Votre code fonctionne très bien pour moi si je lui donne un numéro. Ce qui, exactement, sont vous fournir en entrée sur système? (Le message d'erreur que vous avez posté indique que vous essayez d'analyser null)
  • Quel est votre avis ? Le code semble bien pour moi. ideone.com/omNdEF
  • Je doute que votre message d'exception correspond à votre code. Scanner méthodes ne renvoient pas null. Ils vont lancer une exception si il n'y a rien à lire. Veuillez fournir une un minimum de reproductibles exemple.
  • Les étapes à ne pas reproduire la cité problème.
InformationsquelleAutor O Williams | 2017-02-22