有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java从ifthen语句设置整数

我试图得到它,所以如果我把一段代码,如

if ((variable1 - variable2) < 0)
        int variable5 = (variable3 + variable4);

但这似乎对我不起作用。所以我想知道是否有人有解决办法


共 (4) 个答案

  1. # 1 楼答案

    根据您的代码,当“if condition”返回true时,您将创建一个新变量。 因此,一旦“if条件的代码块”结束,块变量“variable5”就会被销毁。所以你不能使用它

    或者在if条件块之前声明它,并在块中为其赋值 或者,如果您希望它在if条件块中声明,请仅在该块中使用它

  2. # 2 楼答案

    如果只使用1语句作为if的主体,则不能声明局部变量

    试试这个:

    int variable5 = 0; // Default value
    if (variable1 - variable < 0)
        variable5 = variable3 + variable4;
    
  3. # 3 楼答案

    您在if中定义整数,而它是一个单行if块,因此只需声明变量,然后将其删除,因为它超出了范围-

    if ((variable1 - variable) < 0)
         int variable5 = (variable3 + variable4);
    

    在外面宣布-

    int variable5 = 0;
    if ((variable1 - variable) < 0)
         variable5 = (variable3 + variable4);
    
  4. # 4 楼答案

    您试图变量声明为if语句体中的唯一语句。这是不允许的,因为这是毫无意义的——变量随后会立即超出范围。要么首先声明变量:

    int variable5 = 0; // Or whatever value you want otherwise
    if (variable1 - variabl < 0)
        variable5 = variable3 + variable4;
    

    或者,如果只需要if语句体中的变量,则需要更多语句:

    if (variable1 - variabl < 0) {
        int variable5 = variable3 + variable4;
        // Use variable5
    }
    

    我强烈建议你总是在if语句(和循环等)中使用大括号