从另一个if语句中访问String变量

时间:2012-09-12 02:12:52

标签: java if-statement scope

我是来自C#的java的新手。

如果我有一个在“if-statement”中设置的字符串,是否有办法将该字符串的值传递给其他if语句?

E.g。我将String hi设置为在if语句中携带文本“hello”,但现在有一个完全独立的if语句,并且希望使用前一个if语句中设置为String hi的值。

我的问题是,在if语句中的某些事情发生之前,不能设置veriable。

if(add.equals(temp)) {
    System.out.println ("What is the first number?");
    numberone = listen.nextDouble ();
    System.out.println ("What is the second number?");
    numbertwo = listen.nextDouble ();
    numberthree = numberone + numbertwo;
    previousproblem = numberthree;
    System.out.println ("The answer is " + numberthree);
}

稍后,在另一个if语句中,我需要引用previousproblem,但在if语句之前无法设置,因为numberthree isn' t设置直到这个陈述。

4 个答案:

答案 0 :(得分:2)

Java在这方面与C#完全相同,您只需在if语句中声明变量 outside ,并设置其初始值:

String s = null;
if (someCondition) {
    s = "hello";
}
if (anotherCondition) {
    System.out.println("s is "+s);
}

答案 1 :(得分:0)

在开始之前定义字符串if和else序列。

String str1,str2;
if(true) {
   // ... true part
   str1 = "hello";
} else { 
   // ... false part
}

现在在另一个If

if(true) {
    str2 = str1; //assign the value of str1 to str2 demonstrating the use str1 in another if
}

答案 2 :(得分:0)

变量在声明的范围内可用;通过附上{ }

可以轻松识别范围

因此,如果您需要跨两个if语句访问变量,则需要在两个if语句的范围内声明它们。

if(condition) {

}
if(another condition) {

}

如果要在第一个if语句之外声明它,请在两者中使用变量:

String myVariable = "";

if(condition) {
    //myVariable operation
}
if(another condition) {
    //myVariable another operation    
}

答案 3 :(得分:0)

参见简单概念。方法Define Variable = null之后:

Condition =null;

if (Condition == true){
System.out.println(Condition);
else{
System.out.println(Condition);
}

所以现在条件值应该是块的访问一侧