while循环开始之前的语句System.out.println("Value of i before loop = " + i);
未被打印,并且循环中的值i
未从1开始打印。而是从随机大int开始打印。while()循环的问题
package main;
import java.util.Random;
public class Main {
public static void main(String args[]){
Random ran = new Random();
int[] in = {2,5,9};
int[] c_gen = new int[3];
int i = 0;
System.out.println("Value of i before loop = " + i);
while(!(c_gen.equals(in))){
c_gen[0] = ran.nextInt(10);
c_gen[1] = ran.nextInt(10);
c_gen[2] = ran.nextInt(10);
i++;
System.out.println(c_gen[0] + " " + c_gen[1] + " " + c_gen[2] + " .................." + i);
}
System.out.print("in = ");
for(int x : in)
System.out.print(x + " ");
System.out.print("\n" + "c_gen = ");
for(int x : c_gen)
System.out.print(x + " ");
System.out.println("\n" + "i = " + i);
}
}
我没有看到任何这样的行为在你的[代码](HTTP: //ideone.com/zDe7Ll)如你所描述的事实你有一个无限循环它意味着条件总是如此,所以你需要搜索如何比较数组 – silentprogrammer