gpt4 book ai didi

c# - 替换字符串数组中的特定值

转载 作者:行者123 更新时间:2023-11-30 20:49:46 26 4
gpt4 key购买 nike

我的这个程序的目标是创建一个用户可以在其中导航的网格。到目前为止,我已经创建了网格,但我仍然坚持如何拥有它,以便在数组字符串 [3,6] 的任何位置我都可以用播放器符号“P”替换其中一个“-”,并且每次玩家移动控制台将打印玩家的位置。

例如。我希望玩家从字符串 [2,5] 开始,“-”将替换为“P”,并且在玩家移动后 [2,5] 处的“-”返回。

但我的主要关注点是找出如何用播放器替换数组中的任何点。

希望一切都清楚

string[,] table = new string[3,6] { {"-","-","-","-","-","-"},
{"-","-","-","-","-","-"},
{"-","-","-","-","-","-"}};
int rows = grid.GetLength(0);
int col = grid.GetLength(0);

for (int x = 0; x < rows; x++)
{
for (int y = 0; y < col; y++)
{
Console.Write ("{0} ", grid [x, y]);
}
Console.Write (Environment.NewLine + Environment.NewLine);
}

我试过使用 .Replace 但到目前为止没有成功

最佳答案

我会做这样的事情:

private static int playerX, playerY;
public static void MovePlayer(int x, int y)
{
table[playerX, playerY] = "-"; //Remove old position
table[x, y] = "P"; //Update new position
playerX = x; //Save current position
playerY = y;

UpdateGrid();
}

您只需将元素设置为 "P" 即可更改它,没什么特别的。

要更新网格,您有两个选择,要么重新绘制所有内容,要么设置光标位置并更改字符。

例子:

SetCursorPosition(playerX, playerY);
Console.Write("-");
SetCursorPosition(x, y);
Console.Write("P");

或者,使用您现在拥有的代码再次调用它以重写所有内容。

关于c# - 替换字符串数组中的特定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23187940/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com