Объединить два одномерных массива и напечатать коллекцию - C#
Формулировка задачи:
Добрый день. Даны две строки, которые необходимо распарсить в массивы.
После чего передать каждый элемент массива конкретному свойству из класса (Имя и Фамилия) и распечатать коллекцию.
Делаю так
Класс
Печатает вроде из метода класса, но мне бы получать конкретное свойства item.Name и конкретное имя.
Листинг программы
- namespace ConsoleApplication1
- {
- class Program
- {
- static private string sfn = "Abraham, Addison, Adrian, Albert, Alec, Alfred, Alvin, Andrew, Andy," +
- " Archibald, Archie, Arlo, Arthur, Arthur, Austen, Barnabe, Bartholomew, " +
- "Bertram, Bramwell, Byam, Cardew, Chad, Chance, Colin, Coloman, Curtis, Cuthbert, " +
- "Daniel, Darryl, David";
- static private string sln = "Smith, Johnson, Williams, Jones, Brown, Davis, Miller, Wilson, Moore, Taylor," +
- " Anderson, Thomas, Jackson, White, Harris, Martin, Thompson, Wood, Lewis, Scott, " +
- "Cooper, King, Green, Walker, Edwards, Turner, Morgan, Baker, Hill, Phillips";
- static void Main(string[] args)
- {
- string[] usersFirstNames = sfn.Split(new string[] { ", ", "\n", "\t" }, StringSplitOptions.RemoveEmptyEntries);
- string[] usersLastNames = sln.Split(new string[] { ", ", "\n", "\t" }, StringSplitOptions.RemoveEmptyEntries);
- for (int i = 0; i < usersFirstNames.Length; i++)
- {
- Console.WriteLine("{0: } {1}\n", usersFirstNames[i], usersLastNames[i]);
- }
- Console.WriteLine();
- Console.WriteLine();
- ListOfStudents lst = new ListOfStudents(usersFirstNames, usersLastNames);
- lst.ShowAll();
- Console.ReadLine();
- }
- }
- }
Листинг программы
- namespace ConsoleApplication1
- {
- class ListOfStudents
- {
- public string Name { get; set; }
- public string LastName { get; set; }
- public string[] NamesArray { get; set; }
- public string[] SurnamesArray { get; set; }
- public ListOfStudents(string[] fn, string[] ln)
- {
- NamesArray = fn;
- SurnamesArray = ln;
- }
- public void ShowAll()
- {
- List<object> lst = new List<object>();
- for (int i = 0; i < NamesArray.Length; i++)
- {
- Name = NamesArray[i];
- lst.Add(Name);
- LastName = SurnamesArray[i];
- lst.Add(LastName);
- }
- foreach (var item in lst)
- {
- Console.WriteLine(item + "\n");
- }
- }
- }
- }
Как можно сделать? Или нужно создать отдельный класс, куда передавать список студента?
Решение задачи: «Объединить два одномерных массива и напечатать коллекцию»
textual
Листинг программы
- using System;
- using System.Collections.Generic;
- namespace ConsoleApplication1
- {
- class Program
- {
- static private string sfn = "Abraham, Addison, Adrian, Albert, Alec, Alfred, Alvin, Andrew, Andy," +
- " Archibald, Archie, Arlo, Arthur, Arthur, Austen, Barnabe, Bartholomew, " +
- "Bertram, Bramwell, Byam, Cardew, Chad, Chance, Colin, Coloman, Curtis, Cuthbert, " +
- "Daniel, Darryl, David";
- static private string sln = "Smith, Johnson, Williams, Jones, Brown, Davis, Miller, Wilson, Moore, Taylor," +
- " Anderson, Thomas, Jackson, White, Harris, Martin, Thompson, Wood, Lewis, Scott, " +
- "Cooper, King, Green, Walker, Edwards, Turner, Morgan, Baker, Hill, Phillips";
- static void Main(string[] args)
- {
- string[] usersFirstNames = sfn.Split(new string[] { ", ", "\n", "\t" }, StringSplitOptions.RemoveEmptyEntries);
- string[] usersLastNames = sln.Split(new string[] { ", ", "\n", "\t" }, StringSplitOptions.RemoveEmptyEntries);
- ListOfStudents lst = new ListOfStudents(usersFirstNames, usersLastNames);
- foreach (Student student in lst.GetAllStudents())
- Console.WriteLine(student);
- Console.ReadLine();
- }
- }
- class ListOfStudents
- {
- List<Student> lst;
- public ListOfStudents(string[] fn, string[] ln)
- {
- lst = new List<Student>();
- for (int i = 0; i < fn.Length; i++)
- {
- Student st = new Student(fn[i], ln[i]);
- lst.Add(st);
- }
- }
- public IEnumerable<Student> GetAllStudents()
- {
- foreach (var item in lst)
- {
- yield return item;
- }
- }
- }
- class Student
- {
- public string Name { get; set; }
- public string LastName { get; set; }
- public Student(string name, string lastName)
- {
- Name = name;
- LastName = lastName;
- }
- public override string ToString()
- {
- return string.Format("{0} {1}", Name, LastName);
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д