2015-03-13 4 views
-1

Я получил это 2D массив:C# изменение 2D массивы

mapData = new int[,] 
{ 
    {2,0,2,2,2}, 
    {1,0,0,1,1}, 
    {1,0,0,0,1}, 
    {1,2,2,2,1}, 
    {1,1,1,1,1}, 
}; 

Однако я хочу, чтобы изменить некоторые из этих чисел, когда происходят определенные события (это представляет мои плитки карты, поэтому я хочу, чтобы заменить некоторые плитки) ,

Как бы я мог сменить, например, два в правом углу?

Я могу это сделать:

mapData = new int[,] 
{ 
    {2,0,2,2,3}, 
    {1,0,0,1,1}, 
    {1,0,0,0,1}, 
    {1,2,2,2,1}, 
    {1,1,1,1,1}, 
}; 

Но это, кажется, действительно неэффективно.

Так как же лучше бы это сделать?

ответ

3

Вы можете изменять содержимое 2D массива, делая

mapData[0, 4] = 3; 

Это должно изменить значение в правом верхнем углу (или левом нижнем углу - я забываю порядок индексов).

+0

Спасибо, erik, я только начал с 2d массивов, так что извините, если это был вопрос «noob» – VinnieH01

+0

@ Erik fyi это «строка, столбец», поэтому он меняет верхний правый. – DLeh