很多这些答案都在说您不能保留原始类型。这并不完全正确。您可以整天不设置原始类型,但在设置之前不能使用该变量。您dots_per_page
在system.out.println
通话的最后一行使用。如果删除该行,您还将看到您的代码将编译。所以你有多种选择来解决这个问题,要么为所有代码路径初始化你的变量,要么只在已初始化的代码路径中使用该变量。
第二个选项的示例:
long dots_per_page;
if (print_type == 'T' || print_type == 't') {
dots_per_page = 5000;
System.out.println(dots_per_page);
}
else if (print_type == 'I' || print_type == 'i') {
dots_per_page = 10000;
System.out.println(dots_per_page);
}
else {
System.out.println("You did not provide a valid option.");
}
//System.out.println(dots_per_page); comment out this line
编辑:还有第三种选择:在 else 情况下退出你的方法
long dots_per_page;
if (print_type == 'T' || print_type == 't') {
dots_per_page = 5000;
}
else if (print_type == 'I' || print_type == 'i') {
dots_per_page = 10000;
}
else {
System.out.println("You did not provide a valid option.");
return;
}
System.out.println(dots_per_page);