如何使用Try-Catch(Java)中If-Else语句中的变量
如何在Java中使用Try-Catch中if-else语句中的变量如何使用Try-Catch(Java)中If-Else语句中的变量,java,if-statement,try-catch,Java,If Statement,Try Catch,如何在Java中使用Try-Catch中if-else语句中的变量 String value1 = "sample"; String value2 = "sample"; int a=0; try { if(value2.equals(value1)) { a = 1; } int b = a; catch (Exception e) { System.out.println("Update Error!"); } int b
String value1 = "sample";
String value2 = "sample";
int a=0;
try
{
if(value2.equals(value1))
{
a = 1;
}
int b = a;
catch (Exception e)
{
System.out.println("Update Error!");
}
int b中的a=a;有一个错误,表示变量可能尚未初始化。如何使用该变量?问题是您只在int a行中声明了它;但是,除了在ifvalue2.equalsvalue1块内,从未使用值初始化。但是由于if块中的代码不能确保运行,a可能无法初始化以传递给b。以后声明或赋值时,可以使用0初始化:
int a = 0;
您需要为int变量a指定一些默认值
如果像GMachado所说的那样初始化变量,就不会得到错误,它会在try中将值从“a”传递到“b”。您的代码中还有一个语法错误,在捕获之前缺少一个括号
String value1 = "sample";
String value2 = "sample";
int a=0;
try
{
if(value2.equals(value1))
{
a = 1;
}
int b = a;
} // Here!!
catch (Exception e)
{
System.out.println("Update Error!");
}
异常是在出现问题时抛出的一些东西。您不能简单地期望生成异常。 Java中有很多异常。它们都从异常类继承。IE:ArrayOutOfBoundException,FileNotFoundException 您可以使用throw函数抛出异常
容易引发异常的代码行必须由try/catch包围。这并不意味着一切都应该在try-curly括号内。规则是,每当抛出接收时,try body下的剩余行将被忽略,因为JVM正在寻找捕获。要么将else{a=}添加到if,要么在其声明处初始化a,比如int a=。没有任何注释有帮助。没有任何注释有帮助可能是因为您没有解释在条件value2.equalsvalue1为false时希望a具有什么值。您的问题不清楚。我认为你缺乏一些关于例外的理论。Integer的默认值为0。BTW equals方法不会引发异常。您是否定义了代码中写入的变量值?就像你写的int a=0;在您的代码中,但根据给定的错误,看起来您编写了int a;在代码中。请重新检查这件事。你是对的,这不会将值传递给b,这并不能真正解决问题。
String value1 = "sample";
String value2 = "sample";
int a=0;
try
{
if(value2.equals(value1))
{
a = 1;
}
int b = a;
} // Here!!
catch (Exception e)
{
System.out.println("Update Error!");
}