Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Die erste Zahl ist 0.
Prüfe, ob die 6 erreicht wurde
Wenn das noch nicht erfüllt ist, wird die add methode aufgerufen, die eine random methode aufruft. Diese Methode erzeugt Zufallszahlen, die dann in Int umgewandelt werden. Was prüft die add methode?
add prüft gar nichts. Was ist denn lottotip? Eine Liste? Ein HashSet ? Jedenfalls werden die generierten Zufallszahlen mit add dort abgelegt, und sobald 6 Zahlen abgelegt wurden(die Liste/Set oder was auch immer die Size 6 erreicht hat), wird die Liste/HashSet o.ä. zurückgegeben.
Okay nochmal von vorne
Dein Ziel ist es ja anscheinend 6 Zufallszahlen bzw Lottozahlen zu generieren(keine Duplikate, und sortiert--> TreeSet)
D.h.
Solange (Treeset`s Größe kleiner als 6 ist){
generiere Zufallszahl und lege diese im Treeset ab
}
//jetzt sind wir aus der Schleife raus, demzufolge wurden 6 verschiedene Zufallszahlen zwischen [1-49] generiert und im TreeSet abgelegt, also geben wir jetzt das TreeSet(6 sortierte Zahlen) zurück
Du multiplizierst nicht mit 49+1, sondern du multiplizierst mit 49 und dann addierst du 1.
Das Multiplizieren von Math.random() mit einer Zahl (in diesem Fall 49) dient dazu, den Wertebereich festzulegen - bei *49 besteht dieser Wertebereich (im Fall von int) aus 0 bis 48 inclusive. Die 49 ist nicht enthalten, weil sie hier den Stellenwert der 1 einnimmt (diese ist ja, wie eRaaa schon sagte, exclusive).
Die Zahl, die du dann noch addierst, verschiebt den nun vorhandenen Wertebereich. Wenn du +1 rechnest, verschiebst du den Bereich von 0 bis 48 auf 1 bis 49 - und das ist ja genau das, was du brauchst.
Da der Programmierer ja von 0-9 und nicht von 1-10 denkt , rechnet und auch programmiert , fügst du da noch die 1 dazu , die das ganze um eins verschiebt also von 0-9 zu 1-10.