Объединить два одномерных массива и напечатать коллекцию - C#

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

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

Добрый день. Даны две строки, которые необходимо распарсить в массивы. После чего передать каждый элемент массива конкретному свойству из класса (Имя и Фамилия) и распечатать коллекцию. Делаю так
Листинг программы
  1. namespace ConsoleApplication1
  2. {
  3. class Program
  4. {
  5. static private string sfn = "Abraham, Addison, Adrian, Albert, Alec, Alfred, Alvin, Andrew, Andy," +
  6. " Archibald, Archie, Arlo, Arthur, Arthur, Austen, Barnabe, Bartholomew, " +
  7. "Bertram, Bramwell, Byam, Cardew, Chad, Chance, Colin, Coloman, Curtis, Cuthbert, " +
  8. "Daniel, Darryl, David";
  9. static private string sln = "Smith, Johnson, Williams, Jones, Brown, Davis, Miller, Wilson, Moore, Taylor," +
  10. " Anderson, Thomas, Jackson, White, Harris, Martin, Thompson, Wood, Lewis, Scott, " +
  11. "Cooper, King, Green, Walker, Edwards, Turner, Morgan, Baker, Hill, Phillips";
  12.  
  13. static void Main(string[] args)
  14. {
  15. string[] usersFirstNames = sfn.Split(new string[] { ", ", "\n", "\t" }, StringSplitOptions.RemoveEmptyEntries);
  16. string[] usersLastNames = sln.Split(new string[] { ", ", "\n", "\t" }, StringSplitOptions.RemoveEmptyEntries);
  17. for (int i = 0; i < usersFirstNames.Length; i++)
  18. {
  19. Console.WriteLine("{0: } {1}\n", usersFirstNames[i], usersLastNames[i]);
  20. }
  21. Console.WriteLine();
  22. Console.WriteLine();
  23. ListOfStudents lst = new ListOfStudents(usersFirstNames, usersLastNames);
  24. lst.ShowAll();
  25. Console.ReadLine();
  26. }
  27.  
  28. }
  29. }
Класс
Листинг программы
  1. namespace ConsoleApplication1
  2. {
  3. class ListOfStudents
  4. {
  5. public string Name { get; set; }
  6. public string LastName { get; set; }
  7. public string[] NamesArray { get; set; }
  8. public string[] SurnamesArray { get; set; }
  9. public ListOfStudents(string[] fn, string[] ln)
  10. {
  11. NamesArray = fn;
  12. SurnamesArray = ln;
  13. }
  14. public void ShowAll()
  15. {
  16. List<object> lst = new List<object>();
  17. for (int i = 0; i < NamesArray.Length; i++)
  18. {
  19. Name = NamesArray[i];
  20. lst.Add(Name);
  21. LastName = SurnamesArray[i];
  22. lst.Add(LastName);
  23. }
  24. foreach (var item in lst)
  25. {
  26. Console.WriteLine(item + "\n");
  27. }
  28. }
  29. }
  30. }
Печатает вроде из метода класса, но мне бы получать конкретное свойства item.Name и конкретное имя.
Как можно сделать? Или нужно создать отдельный класс, куда передавать список студента?

Решение задачи: «Объединить два одномерных массива и напечатать коллекцию»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. namespace ConsoleApplication1
  4. {
  5.     class Program
  6.     {
  7.  
  8.         static private string sfn = "Abraham, Addison, Adrian, Albert, Alec, Alfred, Alvin, Andrew, Andy," +
  9.                                     " Archibald, Archie, Arlo, Arthur, Arthur, Austen, Barnabe, Bartholomew, " +
  10.                                     "Bertram, Bramwell, Byam, Cardew, Chad, Chance, Colin, Coloman, Curtis, Cuthbert, " +
  11.                                     "Daniel, Darryl, David";
  12.  
  13.         static private string sln = "Smith, Johnson, Williams, Jones, Brown, Davis, Miller, Wilson, Moore, Taylor," +
  14.                                     " Anderson, Thomas, Jackson, White, Harris, Martin, Thompson, Wood, Lewis, Scott, " +
  15.                                     "Cooper, King, Green, Walker, Edwards, Turner, Morgan, Baker, Hill, Phillips";
  16.  
  17.         static void Main(string[] args)
  18.         {
  19.             string[] usersFirstNames = sfn.Split(new string[] { ", ", "\n", "\t" }, StringSplitOptions.RemoveEmptyEntries);
  20.             string[] usersLastNames = sln.Split(new string[] { ", ", "\n", "\t" }, StringSplitOptions.RemoveEmptyEntries);
  21.             ListOfStudents lst = new ListOfStudents(usersFirstNames, usersLastNames);
  22.             foreach (Student student in lst.GetAllStudents())
  23.                 Console.WriteLine(student);
  24.             Console.ReadLine();
  25.         }
  26.     }
  27.  
  28.     class ListOfStudents
  29.     {
  30.         List<Student> lst;
  31.         public ListOfStudents(string[] fn, string[] ln)
  32.         {
  33.             lst = new List<Student>();
  34.             for (int i = 0; i < fn.Length; i++)
  35.             {
  36.                 Student st = new Student(fn[i], ln[i]);
  37.                 lst.Add(st);
  38.             }
  39.         }
  40.  
  41.         public IEnumerable<Student> GetAllStudents()
  42.         {
  43.             foreach (var item in lst)
  44.             {
  45.                 yield return item;
  46.             }
  47.         }
  48.     }
  49.     class Student
  50.     {
  51.         public string Name { get; set; }
  52.         public string LastName { get; set; }
  53.         public Student(string name, string lastName)
  54.         {
  55.             Name = name;
  56.             LastName = lastName;
  57.         }
  58.         public override string ToString()
  59.         {
  60.             return string.Format("{0} {1}", Name, LastName);
  61.         }
  62.     }
  63. }

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


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

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

10   голосов , оценка 3.9 из 5

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

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

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