Java for循环不会运行......?

the*_*tor 2 java

我正在做家庭作业,而程序的关键循环给我带来了麻烦.我的老师告诉我,如果我使用while循环获取一个反控制变量,她会取下积分,所以我很想把它弄好.

这就是我想要工作的东西,以及我内心的感受:

for ( int check = 0; check == value; check++ ) {
    int octal = getOctal();
    int decimal = convertOctal( octal );
    System.out.printf( "%d:%d", octal, decimal );
}
Run Code Online (Sandbox Code Playgroud)

但是,此循环不会运行.我尝试使用while循环,它完美地工作!

int check = 0;
while ( check < value )
{
    int octal = getOctal();
    int decimal = convertOctal( octal );
    System.out.printf( "%d:%d", octal, decimal );
    check++;
}
Run Code Online (Sandbox Code Playgroud)

以下是主要方法的其余部分:

public static void main ( String args[] )
{
    int value = getCount();

    while ( value < 0 )
    {
        System.out.print( "\nYou must enter a positive number" );
        value = getCount();
    }

    if ( value == 0 )
    {
        System.out.print( "\n\nNo numbers to convert.\n\n" );
    }
    else
    {   
        int check = 0;
        while ( check < value )
        {
            int octal = getOctal();
            int decimal = convertOctal( octal );
            System.out.printf( "%d:%d", octal, decimal );
            check++;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

是的,这是一个八进制到十进制的转换器.我自己从头开始编写转换器方法,并为此感到非常自豪.

编辑:我的问题是,这里有什么问题?EDIT part deux:感谢大家帮忙解决我的误解.继续方法文档!

Jea*_*tti 12

for ( int check = 0; check == value; check++ )
Run Code Online (Sandbox Code Playgroud)

这只会运行check == value.修改为:

for ( int check = 0; check < value; check++ )
Run Code Online (Sandbox Code Playgroud)