请看下面的代码
public class Prime
{
    public static void main(String[]args)
    {
        int i = 2; 
        int counter = 0;
        while(true)
        {
            if(counter==6)//Count still 6
            {
                break;
            }
            else
            {
                if(getPrimes(i)==true)
                {
                    i++;
                    counter++;
                    System.out.println("Counter: "+counter);
                }
                else
                {
                    System.out.println("No");
                }
            }
        }
    }
    static boolean getPrimes(int num)
    {
        boolean result = false;
        int i = 2;
            while(true)
            {
                if((num%i) != 0) //if the number cannot be divided by any other number (except 1 and it self) it is prime
                {
                    result = true;
                    System.out.println(num);
                    System.out.println("I is: "+i);
                    i=2;
                    break;
                }
                else //Not a prime. Repeat the process
                {
                    result = false;
                    i++;
                }
            }
            return result;
     }       
}
在这里,我试图获得 0-6 之间的所有素数。这是从一个非常大的数字中获取数千个素数的测试用例。但是,它不是显示唯一的素数,而是显示每一个数字!
我在这里做错了什么?请帮忙!