如何增加变量的值

时间:2013-11-21 08:18:07

标签: java

大家好我是java的新手我完成了我的家庭工作,我宣布全局变量,但我的变量正在改变。

计划:

main()
{

    public static final double j =20;   
    public static final double l =5;

    if (l=5)
    {
        for (; j<=50  ; j+=2)
        {
            System.out.printf("value of j is %d\n",j);
        }

        for (; j>=4; j-=2) // i want here the value j to be 20 ... 
        {
            System.out.printf("value of decrement is %d\n",j);
        }

    }
}

当我再次因为循环再次j = 20而工作时... ...我希望j从20开始

4 个答案:

答案 0 :(得分:4)

首先,JAVA中没有任何名为全局变量的内容。 另外,代码中有很多编译错误: 我会列出一些:

  1. 缺少main()函数的返回类型。

    void main() { //code here }

  2. 静态和公共修饰符不适用于局部变量(方法变量)

    public static final double j =20; // this is wrong inside a method.
    原因:在方法变量内部有本地范围。方法变量没有公共/私有范围。 所以它应该是:

    final double j =20; //final means 'j' behaves as a constant

  3. 如果出现以下情况,您正尝试将5分配给l:

    if (l=5) //它将无法编译,因为如果表达式应该是布尔值,则第一个l将变为5并且在内部。 它应该是if(l==5)

  4. for (; j<=50 ; j+=2)将无法编译,因为j被声明为最终变量。

  5. 修复可以是:for (int jNew=0;jNew<=50;jNew++)

    所以整体代码可以是:

    void main()
    {
          final double j =20; 
    
          final double l =5;
    
    
        if (l==5)
        {
        for (int j3=0; j3<=50  ; j3+=2)
        {
            System.out.println(j);
    
        }
        for (int j4=0; j4>=4; j4-=2) // i want here the value j to be 20 ... 
    
        {
            System.out.println(j);
    
        }
    
    
    }
    }
    

    浏览Java here的基础知识。

答案 1 :(得分:1)

您可以使用循环本身简单地声明变量

for(j=20; j>=4; j-=2) // i want here the value j to be 20 ... 
{
   System.out.printf("value of decrement is %d\n",j);
}

答案 2 :(得分:0)

不是问题本身,但请记住,在Java中,main方法应该像这样声明:

public static void main(String[] args) { ... }

原因可以在这里找到: Why is the Java main method static?

答案 3 :(得分:0)

j获得意外值(52)的原因是语句j+=2

在每次迭代时,这将使用递增的值覆盖j的值。

在循环的几次迭代之后,j的值变为52,这导致循环退出,因为条件j<=50不满足。

因此,在第二个循环开始之前,您需要使用值20重新初始化j。

注意:

如果你想要我和我j为public static,将它们声明在方法之外但在类中。

由于您不需要小数,请使用int代替double