我正在尝试用Java制作一个基本的计算器,只是为了练习。我知道为了将用户输入保存为整数,您必须这样做:
int num1 = number1.nextInt();
但是,每当我尝试使用以下代码对字符串进行操作时:
char mathT = mathType.nextChar();
我得到一个错误。如何将其另存为字符串?这是错误:
calculator.java:20: cannot find symbol
symbol : method nextChar()
location: class java.util.Scanner
char mathT = mathType.nextChar();
^
1 error
这是完整的代码:
import java.util.Scanner;
public class calculator
{
static Scanner mathType = new Scanner(System.in);
static Scanner number1 = new Scanner(System.in);
static Scanner number2 = new Scanner(System.in);
public static void main(String[] args)
{
System.out.println("Enter M, D, S, or A");
int num2 = number2.nextInt();
char mathT = mathType.nextChar();
int num1 = number1.nextInt();
if (mathT == 'M')
{
System.out.println(num1 * num2);
}
else if (mathT == 'D')
{
System.out.println(num1 / num2);
}
else if (mathT == 'A')
{
System.out.println(num1 + num2);
}
else if (mathT == 'S')
{
System.out.println(num1 - num2);
}
else
{
System.out.println("You did not enter a valid operation.");
}
}
}
答案 0 :(得分:1)
Scanner
类没有nextChar()
方法。相反,您可以执行以下操作:
char mathT = mathType.next().charAt(0);
哪个将获取下一个完整令牌的第一个字符并将其分配给mathT
。
另外,要从Scanner
中读取一个以上的System.in
对象