string cannot be converted to int! how to sum a scanned int on java?

非 Y 不嫁゛ 提交于 2019-12-20 07:38:13

问题


I wrote this simple program to sum a scanned int written by the user, but when i compile it, it says that "string cannot be converted to int." What is wrong in this program?

import java.util.*;
public class Pr6{
      public static void main(String[] args){
      Scanner scan = new Scanner (System.in);
      int num1;
      int num2;
      int num3;
      int sum;

                  System.out.print("Please write an integer: ");
       num1 = scan.nextLine();

                  System.out.print("Please write an integer: ");
       num2 = scan.nextLine();

                  System.out.print("Please write an integer: ");
       num3 = scan.nextLine();

       sum = num1 + num2 + num3;
                  System.out.print("Total = " + sum);



        }//main
}//Pr6

回答1:


Here is your issue

num1 = scan.nextLine();

Let's look at what data type num1 is:

int num1;

scan.nextLine() will return a String. And you can't have int num1 = "1", because they are different data types.

You should use scan.nextInt(). It will return a number. That'll solve your problems :)

So you'll have num1 = scan.nextInt(), num2 = scan.nextInt(), and num3 = scan.nextInt().

I hope that helps. Good luck!



来源:https://stackoverflow.com/questions/26577554/string-cannot-be-converted-to-int-how-to-sum-a-scanned-int-on-java

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!