我想使用在'if'条件下被初始化的输入变量在此条件之外

我想使用在'if'条件下被初始化的输入变量在此条件之外

问题描述:

我有一些条件,并且在这种情况下我想要从用户那里接受输入。但是我也想在这种情况之外使用这个输入。我在'if'之外声明变量,但我需要在条件中进行初始化。那么,有没有在java中使用这个外部呢?我想使用在'if'条件下被初始化的输入变量在此条件之外

+1

是什么问题? –

+1

这很难说,但它听起来像你只需要在if条件之前初始化变量,然后更新里面的变量。 –

你基本上可以 初始化任何原始和覆盖它在你的病情

就像一个整数

int i = 0; 
if (condition){ 
    i = userinput; 
} 

或String

String i = ""; 
if (condition){ 
    i = userinput; 
} 
+0

谢谢....这对我很有帮助。对此我从3天开始非常困惑。这很简单。 –

+0

或者:'int i; if(condition){i = userinput; } else {i = 0; }'(或'int i = condition?userinput:0;')。分配变量一次可以保持最终的效果,这意味着你可以在lambdas,匿名类等中使用它。 –

需要初始化的外部变量的if语句的默认值。如果你没有输入你的if语句,但你想稍后阅读,你的变量会有什么价值?这需要声明。 null也是可能的。或者if语句之前只需要声明你的变量和初始化它的if语句中,也以相同的if语句的else分支:

Object test = null; 
if (condition == true) { 
test = new Object(); 
} 
System.out.println(test); 

Object test; 
if (condition == true) { 
test = new Object(); 
} else { 
    test = anotherValue; 
} 
System.out.println(test); 
+0

你不需要(也不应该)写'condition == true':'condition'本身就足够了,并且不太容易出错。 –