我真的很陌生,我一直在寻找数天来解决这个实验室的工作问题。这个实验非常简单,我相信我的逻辑有问题,但是当执行我的代码时,我没有得到期望的结果。该程序要求输入三个整数和一个字符。如果字符是'S',程序将打印前3个整数的总和,如果字符是'P',产品'A',平均值和其他任何字符都会打印出错误。使用If/Else语句将字符串转换为字符
以下是我的代码。它要求三个整数和一个字符,但结果总是一个错误,即使我输入'S','P'或'A'。
任何帮助将不胜感激。
谢谢, 乔
int n1, n2, n3;
String numberFromKB;
String charFromKB;
Scanner keyboard = new Scanner (System.in);
numberFromKB = JOptionPane.showInputDialog("Enter the first number.");
n1 = Integer.parseInt(numberFromKB);
numberFromKB = JOptionPane.showInputDialog("Enter the second number.");
n2 = Integer.parseInt(numberFromKB);
numberFromKB = JOptionPane.showInputDialog("Enter the 3rd number.");
n3 = Integer.parseInt(numberFromKB);
charFromKB = JOptionPane.showInputDialog(null, "Enter a character:");
if (charFromKB = "s")
{
System.out.println("Sum of integers is: " + n1 + n2 + n3);
}
else if (charFromKB = "p")
{
System.out.println("Product of integers is: " + n1 * n2 * n3);
}
else if (charFromKB = "a")
{
System.out.println("Average of integers is: " + ((n1 + n2 + n3)/3f));
}
else
{
System.out.println("ERROR!");
}
}
}
不能使用'='在'if'条款。你可能想要像这样使用'.equals()':'charFromKB.equals(“s”)' – 2016-02-05 15:55:32
这甚至会编译吗? – ControlAltDel
另请参阅=和== – Rodney