为什么这个for循环是无限的?

esh*_*333 5 java loops for-loop

我有这样的for循环,当step为(0; 1)时它变为无限.如果步骤是[1; ..)它运作良好.

  public interface FindMinI {
    double function(double x);

    static double findMinOfFuncOnInterval(int begin, int end, double step, FindMinI func)
    {
        double min = Double.MAX_VALUE;

        for (int i = begin; i <= end ; i += step) {

            if(func.function(i) <= min)
                min = func.function(i);

        }
        return min;
    }
 }
Run Code Online (Sandbox Code Playgroud)

小智 6

如果你尝试使用step,(0,1)这将在添加时被转换为int i,因此你将在每次迭代中添加0,i这将导致无限循环!