java - Java 错误:变量 playerClass 可能尚未初始化
问题描述
我到处寻找,这个问题的所有解决方案都是更复杂的情况。我已经编程了几年,但对 Java 还是很陌生。
当我启动程序时,它说“错误:变量 playerClass 可能没有被初始化”。如果您知道如何提供帮助,将不胜感激让我知道!”
import java.util.Scanner;
import java.util.Random;
class Main {
public static void main(String[] args) {
// reg variables
int health;
int damage;
int defense;
int powerUp;
int currentLevel;
int difficulty;
int playerClass;
// level types
boolean intro;
boolean reglevel = false;
boolean bossFight = false;
boolean puzzle = false;
// scanner
Scanner userInput = new Scanner(System.in);
// game start
intro = true;
if (intro = true) {
System.out.println("Select a class:");
System.out.println("[Press number relating to class]");
System.out.println("-1 - Fighter [25 Health, 10 Damage, 5 Defense");
System.out.println("-2 - Archer [15 Health, 10 Damage, 1 Defense, Passive: Ranged");
System.out.println("-3 - Mage [20 Health, 15 Damage, 3 Defense, Ability: Fireball");
playerClass = userInput.nextInt();
}
if (playerClass == 1) {
System.out.println("You have selected Fighter! You use your sword to fight enemies.");
System.out.println("What difficulty do you want your dungeon to be?");
System.out.println("Type number related to difficulty:");
System.out.println("1: Easy");
System.out.println("2: Medium");
System.out.println("3: Hard");
difficulty = userInput.nextInt();
}
}
}
解决方案
先初始化playerClass
;当@luk2302 被清除时,您的变量会被有条件地初始化,因此编译器无法确定这一点。
推荐阅读
- javascript - Awesomplete:使用空格作为多个值自动建议的分隔符
- c# - 这是什么意思'字符串?信息'
- java - 构造函数中的数组列表元素不等于函数中的元素
- redirect - 在 GitHub Pages 上重定向多个网页
- python - RASA 槽提取 NLU 数据
- android - BLE - clientIf 值大于 7 时的连接问题
- html - 选择的选项标签可以使用 django 携带多个值吗?
- android - Chrome devTools 检测到远程设备但未检测到活动的 Chrome 选项卡并且不提供链接
- python-3.x - 为什么我的循环变量不转换为字符串?
- ruby-on-rails - Rails 使用 devise 登录以从两个数据库表进行身份验证