Переопределение ToString для List - C#
Формулировка задачи:
Добрый день.
Возникла проблема с переопределением ToString для List.
Есть следующий класс:
При выведении созданного объекта в консоли через
Выдает ошибку System.Collections.Generic.List
Понимаю, что не может Console.WriteLine просто взять и вывести List.
Через метод делать вывод на консоль не вариант. Необходимо именно переопределить ToString.
Прошу подсказать как это правильно реализовать.
class Grandma { public string Name { get; set; } public int Age { get; set; } // public string Property { get; set; } public List<string> listProperty; public Grandma() { Console.WriteLine("Enter Name: "); Name = Convert.ToString(Console.ReadLine()); Console.WriteLine("Enter age: "); Age = Convert.ToInt32(Console.ReadLine()); AddProperty(); } public override string ToString() { return Name + " " + Age + " " + listProperty; } public void AddProperty() { int n; string st; List<string> prop = new List<string>(); Console.WriteLine("Enter number of properties: "); n = Convert.ToInt32(Console.ReadLine()); while (n != 0) { Console.WriteLine("Enter property: "); st = Convert.ToString(Console.ReadLine()); prop.Add(st); n--; } listProperty = prop; } public void PropertyOut() { foreach (string pr in listProperty) { Console.WriteLine(pr); } } }
Console.WriteLine(obj);
Решение задачи: «Переопределение ToString для List»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; namespace ConsoleApplication6 { class Program { static void Main(string[] args) { Test test = new Test(); Console.WriteLine(test); } } class Test { private List<string> list = new List<string>(new[]{ "ONE", "TWO", "THREE" }); public override string ToString() { return string.Join(" ", list); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д