Wpis z mikrobloga

Takie nubskie pytanko, bo mam tutaj problem z random number generatorem z tego względu, że zawsze wywala zero (w sensie że map[x].food/wood/gold = 0). Tak na oko sobie pozwoliłem strzelić, że to coś z użyciem operatora kropki bo poza loopem wszystko działa jak należy. Nie zjedzcie mnie. Wie ktoś jak to rozwiązać? Szukałem już na stacku i nic mi nie pomogło. :/
#naukaprogramowania #java
Ruthan - Takie nubskie pytanko, bo mam tutaj problem z random number generatorem z te...

źródło: comment_rYbn4LoxYSET5dkKTLUEd5K2Zd73HJ9n.jpg

Pobierz
  • 7
  • Odpowiedz
@Ruthan: w każdym wejściu do pętli inicjalizujesz nowego x jako zero, a potem na koniec go inkrementujesz. Jak już chcesz to robić w ten sposób, to powinieneś go inicjalizować przed wejściem do pętli. Ale nie rób tak. Dzięki temu, że masz for eacha (ten rodzaj fora, którego użyłeś) możesz się odnosić do każdego kolejnego elementu w tej pętli za pomocą b (ta referencja, którą masz w for(Map b map)).
  • Odpowiedz
@Ruthan: A nie możesz sobie zrobić defaultowego konstruktora tego obiektu Map i tam dawać losowe wartości podczas tworzenia mapy? Nie musiałbyś drugi raz iterować w metodzie createMap.
  • Odpowiedz
@Failar: @Pruderyjny: Jezu co ja #!$%@?łem z tym x, teraz widzę. Powinienem go zainicjować przed pętlą. No i szczerze powiem, nie czaiłem za bardzo o co z tym parametrem b chodzi, po prostu widziałem takie fory gdzieś i chciałem zastosować.
@pulla: Chodzi o coś takiego, tak?

map[i] = new Map (int food, int wood, int gold)


Wybaczcie mi, na razie słaby w to jestem. Dzięki za pomoc, ciepłem b
  • Odpowiedz
@Ruthan: No może być tak, ale może też być np. tak:
map[i] = new Map ();

W klasie map:

public class Map() {
public Map() {
food = random;
wood = random;
gold = random;

}
}

Za random sobie wstaw tego nextInta
  • Odpowiedz