我正在为分配创建一个简单的控制台小程序,但在尝试运行我的应用程序时遇到了错误。错误是:
“类型不匹配:无法从 void 转换为字符串”。
由于我有一个反复出现的“ElseIf”语句,因此该错误发生了四次。
这是问题所在的元素:
String thirdNum = println("Would you like a third number?(Y/N)");
这是完整的代码:
import acm.program.*;
public class abacusConsole extends ConsoleProgram {
public void run() {
println("This program is a basic calculator two numbers!");
println("Operations that the program recognises: \n Add \n Subtract \n Multiply \n Divide");
String operator = readLine("Which operator would you like to use?");
if (operator.equals("Add")) {
int n1 = readInt("First Number");
int n2 = readInt("Second Number");
String thirdNum = println("Would you like a third number?(Y/N)");
if (thirdNum.equals("Y")) {
int n3 = readInt("Third Number:");
int total = n1 + n2 + n3;
println(+n1+" + "+n2+" + "+n3+" = "+total+".");
} else if (thirdNum.equals("N")) {
int total = n1 + n2;
println(+n1+" + "+n2+" = "+total+".");
} else {
println("Please reload the application and type in either 'Y' or 'N'");
}
} else if (operator.equals("Subtract")) {
int n1 = readInt("First Number");
int n2 = readInt("Second Number");
String thirdNum = println("Would you like a third number?(Y/N)");
if (thirdNum.equals("Y")) {
int n3 = readInt("Third Number:");
int total = n1 - n2 - n3;
println(+n1+" - "+n2+" - "+n3+" = "+total+".");
} else if (thirdNum.equals("N")) {
int total = n1 + n2;
println(+n1+" - "+n2+" = "+total+".");
} else {
println("Please reload the application and type in either 'Y' or 'N'");
}
} else if (operator.equals("Multiply")) {
int n1 = readInt("First Number");
int n2 = readInt("Second Number");
String thirdNum = println("Would you like a third number?(Y/N)");
if (thirdNum.equals("Y")) {
int n3 = readInt("Third Number:");
int total = n1 * n2 * n3;
println(+n1+" x "+n2+" x "+n3+" = "+total+".");
} else if (thirdNum.equals("N")) {
int total = n1 * n2;
println(+n1+" x "+n2+" = "+total+".");
} else {
println("Please reload the application and type in either 'Y' or 'N'");
}
} else if (operator.equals("Divide")) {
int n1 = readInt("First Number");
int n2 = readInt("Second Number");
String thirdNum = println("Would you like a third number?(Y/N)");
if (thirdNum.equals("Y")) {
int n3 = readInt("Third Number:");
int total = n1 / n2 / n3;
println(+n1+" / "+n2+" / "+n3+" = "+total+".");
} else if (thirdNum.equals("N")) {
int total = n1 / n2;
println(+n1+" / "+n2+" = "+total+".");
} else {
println("Please reload the application and type in either 'Y' or 'N'");
}
}
}
}