Я начинаю программировать на C# и недавно начал работать над степенью бакалавра. То, что я пытаюсь сказать, я новичок.Зачем мне нужно переопределять ToString?
Я отметил место, где у меня возникла проблема. Проблема в том, что я не понимаю, почему мне нужно вообще переопределить код.
Существует 2 var объекта типа (сначала и для отдыха).
public Pair()
{
first = rest = null;
}
public Pair(Object o)
{
first = o;
rest = null;
}
public Object First()
{
return(first);
}
public Object Rest()
{
return(rest);
}
public Pair Connect(Object o)
{
rest = o;
return(this);
}
// Вот «переопределяющая строка ToString». Я не понимаю. Почему мне нужно переопределить это?
public override string ToString()
{
string output = "(";
Pair p = this;
while (p != null) {
if (p.First() == null)
output += "NULL";
else
output += p.First().ToString();
if (p.Rest() is Pair)
p = (Pair)(p.Rest());
else {
if (p.Rest() != null)
output += " . " + rest.ToString();
break;
}
output += " ";
}
output += ")";
return(output);
}
Вам не нужно переопределять его, однако он полезен во многих сценариях. Как в «Исключениях» или когда вы «отлаживаете». Если вы делаете 'Console.WriteLine (new Pair()),' он на самом деле вызовет метод ToString – kevintjuh93
. У каждого объекта есть ToString, изображение у вас есть класс Person, и у него были такие свойства, как FirstName, Lastname и т. Д. предпочтительнее переопределить метод ToString для возврата, например, FirstName + "" + Surname. Вместо по умолчанию «NameSpace.Person» –
Никогда не пишите код, который вы не понимаете. Гарантируется, что вы сами откроете, почему полезно переопределить ToString(). –