Ich versuche, die Werte eines Arrays nach dem Zufallsprinzip zu bekommen, aber ich bekomme einen Fehler Hier ist mein Code so weit:
%Vor% Der Fehler, den Sie bekommen (eine arithmetische Ausnahme), ist, weil validMoves
leer ist und dies zu einer Division durch Null führt, wenn Sie die Modulo-Operation durchführen.
Sie müssen explizit auf den Fall eines leeren validMoves
-Arrays prüfen.
Außerdem sollten Sie arc4random_uniform
verwenden, um Modulo-Bias zu vermeiden.
Als letzte Bemerkung, dass arc4random_uniform(0)
0
zurückgibt, sollte ein solcher Fall vermieden werden oder Sie werden versuchen, auf das erste Element eines leeren Arrays zuzugreifen, was Ihre Anwendung natürlich zum Absturz bringen wird.
Tags und Links objective-c