Ich denke, der Konstruktor ist logisch korrekt, ich kann einfach nicht herausfinden, wie man es im Wesentlichen nennt! :) Kann mir bitte jemand helfen? Wenn jemand nur einen kurzen Blick auf meinen Code werfen würde, wäre es nett :) Vielen Dank!Was ist falsch an meiner Implementierung dieses Algorithmus zur Berechnung der ersten N Primzahlen?
Auch ich benutze ArrayLists in dieser Implementierung und ich muss es so tun, damit ich es nicht ändern möchte, obwohl es viel einfacher mit nur Arrays implementiert wird.
import java.util.*;
public class PrimeNumberss {
public static void main(String args []){
PrimeNumberss PrimeNumbers = new PrimeNumberss(10);
}
public PrimeNumberss (int initialCapacity) {
ArrayList<Integer> listOfPrimeNumbers = new ArrayList<Integer>(initialCapacity);
long numberOfPrimes = 0; //Initialises variable numberOfPrimes to 0
int start = 2;
boolean[] isPrimeNumber = new boolean[initialCapacity + 1];
for (int i=0;i==initialCapacity;i++) {//setting all values in array of booleans to true
isPrimeNumber[i] = true;
}
while (start != initialCapacity)
{
if (isPrimeNumber[start])
{
listOfPrimeNumbers.add(start);
//add to array list
numberOfPrimes++;
for (int i = start; start < initialCapacity; i+=start)
{
isPrimeNumber[i] = false;
}
}
start++;
}
}
}
Was ist das Problem? Wenn Sie einen Fehler erhalten, geben Sie bitte die Details an. Wenn das Ergebnis nicht wie erwartet ist, geben Sie bitte Details an –
Es sieht so aus, als ob Sie es gut nennen, was genau ist das Problem? –
Entschuldigung für den Mangel an Details! Ich wollte den Konstruktor, den ich anrufe, testen, um die ersten 10 Primzahlen auszugeben. Wenn ich es laufe, druckt es nichts. Ich weiß, dass ich etwas Dummes vergessen habe, aber ich sterbe im Moment müde und kann es einfach nicht sehen! – user476033