Обращение к массиву в методе, который передан как объект - C#

Узнай цену своей работы

Формулировка задачи:

Передал массив в метод как объект. В методе можно извлечь свойства этого массива. Как в таком методе обратиться к элементу массива? (с условием что размерность (Rank) массива всегда 1)
using System;
class MyClass
{
    static void Main()
    {
       int[]  arr1 = new int[6];
       myclass2.metod5_arr_ob(arr1);
       Console.Read();
    }
}
 
class myclass2
{    
    static public void metod5_arr_ob(Array arr)
    {
        int k;
        Console.WriteLine(arr.Rank); //к свойствам массива (объекта) обращаться можно
        k = arr[1];  // как обратиться к элементу? выдает ошибку
      }
}
//ошибка: Невозможно применить индексирование через [] к выражению типа "System.Array"

Решение задачи: «Обращение к массиву в методе, который передан как объект»

textual
Листинг программы
static void Main()
        {   
            int[,] mas = new int[3,3];
            MyLib.ArrRandom(mas);
            mas =(int[,])  metod(mas); 
            Console.ReadLine();
        }   //конец Main
            
        static Array metod (Array arr) {  //массив передается в метод, как объект
        
            int[,] temp = new int[arr.GetLength(0),arr.GetLength(1)];
            temp=(int[,]) arr;  //приведение типов.
            Console.WriteLine(temp[0,0]);  //обратиться к 0,0 элементу массива mas, который передан как объект
            temp[0,0]=55;  // изменить элемент 0,0 массива mas, который передан как объект
            return temp;
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.8 из 5
Похожие ответы