これをすべて重複としてマークする前に、他の質問とは異なる方法で行われているコードを確認してください。このコードに関連する修正をいただければ幸いです。これはほとんど計算機で、2 つの数値を受け取り、オペレーターが最終的な数値 (および、該当する場合は剰余) を出力します。エラーが発生します:
The local variable num3 may not have been initialized
The local variable rem may not have been initialized
コードは次のとおりです。
import java.util.Scanner;
public class JCalc {
public static void main(String[] args) {
Scanner myScanner = new Scanner(System.in);
int num1;
int num2;
int num3;
int rem;
System.out.println("Welcome to JCalc! The best calculator ever!");
System.out.print("Please enter the first number: ");
num1 = myScanner.nextInt();
System.out.print("Please enter the second number: ");
num2 = myScanner.nextInt();
System.out.print("Please enter an operator (+, -, %, *): ");
String op = myScanner.next();
if (op == "+") {
num3 = num1 + num2;
}
if (op == "-") {
num3 = num1 - num2;
}
if (op == "%") {
num3 = num1 - num2;
rem = num1 % num2;
}
if (op == "*") {
num3 = num1 * num2;
}
System.out.print("The answer is: ");
System.out.print(num3); //error
if (op == "%") {
System.out.print(" with a remainder of ");
System.out.println(rem); //error
}
}
}
最後の 2 つの括弧は、コピーして貼り付けたときに少しめちゃくちゃになりました (申し訳ありません)。私が得ることができるすべての助けに感謝します!