错误讯息: Test.java:19:错误:变量y可能尚未初始化
我确定我收到此错误消息,因为“y”未在if和else循环之外定义。我的问题是如何在不改变结构的情况下保留if和else循环中初始化的“y”,所以 LISTEN“System.out.println(”y =“+ y);”必须留在IF和ELSE循环中。
import java.util.Scanner;
public class Test
{
public static void main(String[] args)
{
Scanner kb = new Scanner(System.in);
int x, y;
System.out.print("enter value: ");
x = kb.nextInt();
if (x != 5)
{
System.out.println("invalid value");
System.exit(0);
}
else
{
y = 10;
}
System.out.println("y = " + y);
}
}
答案 0 :(得分:1)
初始化它,或将System.out.println
放在初始化y的else语句中。
else
{
y = 10;
System.out.println("y = " + y);
}
答案 1 :(得分:0)
由于局部变量未自动初始化,因此在使用
之前必须对其进行初始化答案 2 :(得分:0)
int x, y = 0;
执行错误消息所说的内容并初始化y
答案 3 :(得分:0)
System.out.print("enter value: ");
int x = kb.nextInt();
int y =0;