私はJavaでゲームを構築しています.Playerオブジェクトの「マップ」があります。プレイヤーがターンを終了したいときに呼び出される endOfTurn というメソッドがあります。これは、「currentPlayerTurn」フィールドをマップ内の次のプレイヤーに設定します。ただし、マップの最後に到達したら、マップ内の最初のプレイヤーに戻って、何度も何度も移動したいと考えています。これを行う方法はありますか?また、プレイヤーのデータ構造はマップである必要があります!
public class Game {
private Map<String,Player> players;
private Player currentPlayerTurn;
public boolean EndOfTurn(Player currentPlayerTurn) {
//need to set this.currentPlayerTurn to the next player in the Map
}
イテレータの使用を検討しましたが、これにはリセット機能や「ループアラウンド」モードがないようです。何か案は?