java - 为什么说变量未初始化?

标签 java

package mmm;
import java.util.Scanner;
public class Hi{
    public static void main(String args[]){
        int num1, num2, result, choice;
        Scanner abhi = new Scanner(System.in);
        System.out.println("You Have The Following Choices:");
        System.out.println("1. Addition");
        System.out.println("2. Subtraction");
        System.out.println("3. Multiplication");
        System.out.println("4. Division ");

        choice = abhi.nextInt();
        System.out.println("Enter The First Number");
        num1 = abhi.nextInt();
        System.out.println("Enter The Second Number");
        num2 = abhi.nextInt();
        switch(choice){
        case 1:
            result = num1 + num2;
        break;
        case 2:
            result = num1 - num2;
        break;
        case 3:
            result = num1 * num2;
        break;
        case 4:
            result = num1 / num2;
        break;
        default:
            System.out.println("Error");


        }
        System.out.println("The Result Is "+result);



    }
}

它说结果未初始化;而我初始化了它。 我基本上错在哪里?我声明了变量类型和所有内容,并做了我能做的一切。我是菜鸟,所以请原谅我愚蠢的问题和疑问。 任何帮助将不胜感激!

最佳答案

如果您采用开关的默认情况,则 result 变量在尝试打印时将不会收到任何内容。

您必须在进入 switch 之前或在 default 案例中为其指定默认值。

关于java - 为什么说变量未初始化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39040976/

相关文章:

java - 使用 Google App Engine 开发服务器作为生产服务器

java - 替换 java 中的 bootclasspath 选项

java - 在树莓派上使用带有 Java 的 sqlite

java - 这种情况下是否可以避免N+1次请求呢?

java - 如何防止 IntelliJ 在 Java 8 流表达式中生成冗余强制转换?

java - 无法检查数组是否使用递归排序

java - 查找 HashMap 中保存最小整数值的键

java - GAE Python Datastore - 嵌套类表查询

java - 使用 JTransform 对缓冲图像进行 DCT - Java

java - 关于Java中正则表达式的问题