我有以下代碼用於幫助我找到1和用戶輸入的任何素數。唯一的問題是,我必須輸出沒有括號和逗號的數字。我怎麼做?如何輸出Arraylist中的數字列表而不輸出括號和逗號?
System.out.println("\nLab1la\n");
Scanner input = new Scanner(System.in);
System.out.println("Enter the primes upperbond ==>> ");
final int MAX = input.nextInt();
boolean primes[];
primes = new boolean[MAX];
ArrayList<Integer>PrimeFactor = new ArrayList<Integer>();
for (int i = 2; i < MAX + 1 ; i++)
{
PrimeFactor.add(i);
}
CompositeNumbers(PrimeFactor);
System.out.println("COMPUTING RIME NUMBERS");
System.out.println();
System.out.println("PRIMES BETWEEN 1 AND " + MAX);
System.out.print(PrimeFactor);
}
public static void CompositeNumbers(ArrayList<Integer> PrimeFactor)
{
for (int i = 0; i < PrimeFactor.size(); i++)
{
if (!isPrime(PrimeFactor.get(i)))
{
PrimeFactor.remove(i);
i--;
}
}
}
public static boolean isPrime(int n)
{
if(n==1)
{
return true;
}
for (int i = 2; i < n +1/2; i++)
{
if (n%i == 0)
{
return false;
}
}
return true;
}
}
也許使用for循環而不是將整個'ArrayList'傳遞給'System.out'? – DigitalNinja 2015-04-03 00:58:15
我不太清楚你的意思,你能解放一點嗎? – Bob 2015-04-03 01:19:50