如何循环遍历所有玩家然后重新开始?

旋风

我有一个名为 NewTurn() 的函数,用于设置下一个玩家。目前我正在使用 if-else 来更改玩家:

if (p == players[0]) 
{ 
    p = players[1]; 
}
else 
{ 
    p = players[0]; 
}

如果我想要 3 个玩家怎么办?没有更简单的方法可以用 %.

鲁弗斯

一个简单的解决方案是,playerCounter每次您请求下一个玩家时,它都会不断增加。然后您使用 选择播放器playerCounter % players.Length这适用于players阵列中任意数量的玩家

例如:

private static int playerCounter = 0;
private static string[] players = { "John", "Mary", "Randy", "Martha" };

private static string GetNextPlayer()
{
    return players[playerCounter++ % players.Length];
}

private static void Main(string[] args)
{
    while (true)
    {
        var player = GetNextPlayer();
        Console.WriteLine($"Current player is: {player}");
        Console.Write("Press any key to move to the next player...");
        Console.ReadKey();
        Console.WriteLine('\n');
    }
}

输出

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何重新开始循环?

汞回滚?舍弃所有本地更改,然后重新开始?

R:循环遍历行直到满足条件,然后在下一行重新开始

在活动内部,如何暂停for循环以调用片段,然后在片段上单击按钮,然后恢复循环以重新开始

SUMIF 然后重新开始计数

删除所有emacs痕迹并重新开始

如何重绘-在处理中重新开始循环

当循环中没有更多元素时如何重新开始?

在 gspread 中,我如何删除所有工作表并重新开始?

for循环不断重新开始

如何向后循环遍历字符串数组x次,并在到达末尾时重新开始?

活动没有重新开始

Python-一次遍历N条记录,然后重新开始

如何使用Docker“重新开始”?

如何从片段重新开始活动?

如何从terraform重新开始?

SQL如何有一个重复的数字直到某个数字然后重新开始

用js循环imacro,暂停20秒,然后重新开始

while循环执行类,然后停止而不是重新开始?

如何开始工作,做一些不同的事情,然后重新开始

如何强制中断重新启动主循环而不是重新开始?(时间问题!)

等待,然后使用VelocityJS重新开始动画

如何插值然后在新的一天重新开始?

实体框架-重新开始-撤消/回滚所有迁移

我如何停止其他循环并让它重新开始?

如何在计时器后重新开始循环?

在没有 pycharm 的情况下重新开始

带有WinRT的Prism从终止恢复时如何强制重新开始?

如何重新开始对象中键的编号?