как я мог получить конкретный столбец и строку моего 2-мерного массива. Это объявлено как это
string[,] table = new string[104, 6];
Я хочу получить столбец [2,0] (3-й столбец) и сравнить его с [2,1] (3-й столбец, 1-й ряд), но если в [2,1] нет значения, я сравните его с [3,0] (4-й столбец).
Я пытался сделать это так
string[,] table2 = new string[104, 6];
string newPreviousValue2 = "placeholder";
int xIndex2 = 0;
int yIndex2 = 0;
string thirdColumn = table2[3, 0];
string firstRowinThirdColumn = table2[4, 0];
foreach (string previousValue in newChars)
{
if (table2.GetLength(0) < xIndex2)
{
break;
}
if (previousValue.Equals(newPreviousValue2) && yIndex2 < table2.GetLength(1) - 1) {
table2[xIndex2, yIndex2] = previousValue;
var col = 2;
var row = 0;
var origin = table2[col, row];
var other = table2[col, row + 1] ?? table2[col + 1, row];
if (origin != null && origin == other)
{
Debug.Log("There's something in 3rd Column 2nd row ");
}
else
{
Debug.Log("There's nothing in 3rd column 2nd Row so Move to 4th Column");
}
}
newPreviousValue2 = previousValue;
}
Но я не мог получить это. Я пытаюсь добиться того, чтобы начать с 3-го столбца, но если в 3-м столбце нет 2-й строки, он сравнит первую строку 3-го столбца с первой строкой 4-го столбца и т. Д.
EDIT:
Теперь у меня есть эти данные: PP, B, P, P, B
Это будет так
код @Immersive при условии, это
var col = 2;
var row = 0;
var origin = table2[col, row];
var other = table2[col, row + 1] ?? table2[col + 1, row];
if (origin != null && origin == other)
{
Debug.Log("There's something in 3rd Column 2nd row ");
}
else
{
Debug.Log("There's nothing in 3rd column 2nd Row so Move to 4th Column");
}
Это всегда относится к else
заявлению