首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Try-Catch (Java)中使用If-Else语句中的变量

如何在Try-Catch (Java)中使用If-Else语句中的变量
EN

Stack Overflow用户
提问于 2019-05-09 01:29:40
回答 4查看 1.4K关注 0票数 -5

如何在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 = a;中的a有一个错误,显示“变量可能尚未初始化”。如何使用该变量?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2019-05-09 02:08:05

如果你像GMachado说的那样初始化你的变量,你不会得到这个错误,它会在你的try中把值从'a‘传递给'b’。你的代码中也有一个语法错误,在catch之前有一个括号丢失了。

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!");
}

票数 1
EN

Stack Overflow用户

发布于 2019-05-09 01:36:15

问题是,除了在if(value2.equals(value1))块中之外,您只在int a;行中声明了它,而从未使用值进行初始化。但是因为if块中的这段代码不能确保运行,所以a可能不会被初始化为传递给b。你可以在声明(或稍后赋值)时用0初始化a:

int a = 0;
票数 0
EN

Stack Overflow用户

发布于 2019-05-09 01:36:21

你需要给整型变量a赋值一些默认值。

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!");
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56046156

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档