C# 替换二维数组中的字符串值
我试图替换2d数组中的字符串值,并尝试了下面的代码,但什么都没有发生C# 替换二维数组中的字符串值,c#,arrays,2d,C#,Arrays,2d,我试图替换2d数组中的字符串值,并尝试了下面的代码,但什么都没有发生 foreach (string item in Arr) { if (UserInput.Equals(item)) { item.Replace(UserInput, "X "); } } 同样的道理,这些代码什么都没有发生 Console.WriteLine("Select a seat that you want to ocupy"); string ln = Console.R
foreach (string item in Arr)
{
if (UserInput.Equals(item))
{
item.Replace(UserInput, "X ");
}
}
同样的道理,这些代码什么都没有发生
Console.WriteLine("Select a seat that you want to ocupy");
string ln = Console.ReadLine();
if (ln.Equals(Arr))
{
ln = ln.Replace(ln, "X ");
}
这应该可以做到:
string ln = Console.ReadLine();
for (int i = 0; i < Arr.length; i++) {
Arr[i] = Arr[i].Replace(ln, "X ");
}
string ln=Console.ReadLine();
对于(int i=0;i
什么是Arr?是数组对象吗
如果是的话,你不能让整个数组都相等
您需要使用for循环或其他方法来检查每一项
for (int i=0, len = Arr.Length; i < len; i++ )
{
if (ln.Equals(Arr[i]))
{
Console.WriteLine("old ln = " + ln);
ln = ln.Replace(ln, "X ");
Console.WriteLine("new ln = " + ln);
}
}
for(int i=0,len=Arr.Length;i
您当前的代码
item.Replace(UserInput, "X ");
创建新的字符串
,然后忽略该字符串;可能是这样的
item = item.Replace(UserInput, "X ");
但是,这在foreach循环中是不可能的,所以让我们尝试使用循环:
String[,]Arr=新字符串[,]{
{“A1”、“A2”、“A3”、“A4”},
{“B1”、“B2”、“B3”、“B4”}
};
字符串UserInput=“B3”;
对于(int line=Arr.GetLowerBound(0);line请尝试以下操作:
string[,] Arr = new string[4, 5];
string textToReplace = "test";
for(int k=0;k < Arr.GetLength(0);k++)
for(int l=0;l < Arr.GetLength(1);l++)
if (Arr[k,l]==textToReplace){
Arr[k, l] = "X";
}
string[,]Arr=新字符串[4,5];
字符串textToReplace=“test”;
for(int k=0;k
您可以显示定义Arr
的代码吗?它是string[][]
还是string[,]
?ln.Equals(Arr)将字符串与数组进行比较并始终返回false这是代码string[,]Arr=新字符串[4,5]
{“A1”,“A2”,“A3”、“A4”、“A5”}、{B1”、“B2”、“B3”、“B4”、“B5”}、{C1”、“C2”、“C3”、“C4”、“C5”}、{D1”、“D2”、“D3”、“D4”、“D5”}、}`
String[,] Arr = new String[,] {
{"A1", "A2", "A3", "A4"},
{"B1", "B2", "B3", "B4"}
};
String UserInput = "B3";
for(int line = Arr.GetLowerBound(0); line <= Arr.GetUpperBound(0); ++line)
for(int column = Arr.GetLowerBound(1); column <= Arr.GetUpperBound(1); ++column)
if (Arr[line, column].Contains(UserInput))
Arr[line, column] = "X";
string[,] Arr = new string[4, 5];
string textToReplace = "test";
for(int k=0;k < Arr.GetLength(0);k++)
for(int l=0;l < Arr.GetLength(1);l++)
if (Arr[k,l]==textToReplace){
Arr[k, l] = "X";
}