我正在制作一个非常基本的计算器程序(我对Java很新。)我正在使用java.io.Console包从命令行输入,我的代码如下所示:
import java.io.Console;
public class calculator {
public static void main(String args[]) {
Console console = System.console();
int exit = 1;
System.out.println("Calculator v1.0 by rulla101");
System.out.println(" ");
String inputselect = console.readLine("Type add, sub, mlt, or div to select operation: ");
if (inputselect == "add") {
//ADDING!!!
while(exit > 0) {
String input1a = console.readLine("Input number 1: ");
int a = Integer.parseInt(input1a);
String input2a = console.readLine("Input number 2: ");
int b = Integer.parseInt(input2a);
System.out.println("The answer is:");
System.out.println(a+b);
String exitstringa = console.readLine("Type 0 to exit, type 1 to add two more numbers: ");
int extseta = Integer.parseInt(exitstringa);
if(extseta == 0){
exit--;
}
}
}
else if (inputselect == "sub") {
//SUBTRACTING!
while(exit > 0) {
String input1s = console.readLine("Input number 1: ");
int c = Integer.parseInt(input1s);
String input2s = console.readLine("Input number 2: ");
int d = Integer.parseInt(input2s);
System.out.println("The answer is:");
System.out.println(c-d);
String exitstrings = console.readLine("Type 0 to exit, type 1 to subtract two more numbers: ");
int extsets = Integer.parseInt(exitstrings);
if(exitsets == 0){
exit--;
}
}
}
else if (inputselect == "mlt"){
//MULTIPLYING!!
while(exit > 0) {
String input1m = console.readLine("Input number 1: ");
int e = Integer.parseInt(input1m);
String input2m = console.readLine("Input number 2: ");
int f = Integer.parseInt(input2m);
System.out.println("The answer is:");
System.out.println(e*f);
String exitstringm = console.readLine("Type 0 to exit, type 1 to multiply two more numbers: ");
int extsetm = Integer.parseInt(exitstringm);
if(exitsetm == 0){
exit--;
}
}
}
else if (inputselect == "div"){
//DIVIDING!!
while(exit > 0) {
String input1d = console.readLine("Input number 1: ");
int g = Integer.parseInt(input1d);
String input2d = console.readLine("Input number 2: ");
int h = Integer.parseInt(input2d);
System.out.println("The answer is:");
System.out.println(g/h);
String exitstringd = console.readLine("Type 0 to exit, type 1 to divide two more numbers: ");
int extsetd = Integer.parseInt(exitstringd);
if(exitsetd == 0){
exit--;
}
}
}
}
}
但是当我尝试编译程序时,我得到了这个:
/Users/ethan/javafolder/calculator/calculator.java:58: cannot find symbol
symbol : variable exitsets
location: class calculator
if(exitsets == 0){
^
/Users/ethan/javafolder/calculator/calculator.java:83: cannot find symbol
symbol : variable exitsetm
location: class calculator
if(exitsetm == 0){
^
/Users/ethan/javafolder/calculator/calculator.java:106: cannot find symbol
symbol : variable exitsetd
location: class calculator
if(exitsetd == 0){
^
3 errors
Done
我不明白......有问题的变量以前没有定义或者任何东西......而且我很确定它们存在于代码中......任何人都可以找出错误吗?
(p.s。我知道它真的很庞大和臃肿,而且我可以用尽可能多的线来做,但请耐心等待。请。)
-rulla101
答案 0 :(得分:1)
看看三个错误。
int extsets = Integer.parseInt(exitstrings);
if(exitsets == 0){ //must be extsets
exit--;
}
int extsetm = Integer.parseInt(exitstringm);
if(exitsetm == 0){ //must be extsetm
exit--;
}
int extsetd = Integer.parseInt(exitstringd);
if(exitsetd == 0){ //must be extsetd
exit--;
}