猿问

tp如何正确处理if条件下的java变量

如果我有一个变量可以是多个值取决于某些条件,我该如何正确编写定义?


例如:


// First part

if (condition a) {

    int a = 1

} else {

    int a = 2

}


// Second part

if (a == 1) {process 1}

if (a == 2) {process 2}

但是如果我这样写,第二部分将给出错误消息,表明它无法识别什么是a.


谢谢,


jeck猫
浏览 87回答 1
1回答

倚天杖

您必须提供a更大的可见性(或者将您的process 1和移至process 2第一个if块并消除a)。假设您想要选项 1:int a;if (condition a) {    a = 1;} else {    a = 2;}也可以写成三元int a = (condition a) ? 1 : 2;对于第二部分,不要忘记这==就是测试相等性的方式(不是=,这是赋值)if (a == 1) {     process 1} else if (a == 2) {    process 2}
随时随地看视频慕课网APP

相关分类

Java
我要回答