Перегрузка метода в классе - C#

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

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

Вопрос, конечно, очень тривиальный, но все же попрошу помощи у более опытных людей. В классе есть метод, задача которого считать массив из консоли.
Листинг программы
  1. class Dimensional
  2. {
  3. public static int[] Input()
  4. {
  5. Console.WriteLine("Input size of massive: ");
  6. int n = int.Parse(Console.ReadLine());
  7. int[] massive = new int[n];
  8. for (int i = 0; i < n; i++)
  9. {
  10. Console.WriteLine("Input A[{0}] element: ", i);
  11. massive[i] = int.Parse(Console.ReadLine());
  12. }
  13. return massive;
  14. }
  15. }
Вызов соответственно примерно таким образом:
Листинг программы
  1. int[] Array = Dimensional.Input();
Так вот, как мне перегрузить данный метод, чтобы я мог использовать и double массив? По логике придется передавать уже созданный массив (а также количество элементов) в метод в качестве параметра? Ведь только так компилятор определит, какой метод использовать для integer массива и double. Я же

не могу создать

еще один метод
Листинг программы
  1. public static double[] Input()

Решение задачи: «Перегрузка метода в классе»

textual
Листинг программы
  1.     class Dimensional
  2.     {
  3.         public static T[] Input<T>()
  4.         {
  5.             Console.Write("Input size of massive: ");
  6.             var n = int.Parse(Console.ReadLine());
  7.             var massive = new T[n];
  8.  
  9.             for (int i = 0; i < n; i++)
  10.             {
  11.                 Console.Write("Input A[{0}] element: ", i);
  12.                 massive[i] = (T)Convert.ChangeType(Console.ReadLine(), typeof(T));
  13.             }
  14.  
  15.             return massive;
  16.         }
  17.      }

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


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

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

13   голосов , оценка 4.154 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы