以下是我要尝试的内容:System.String
是class
,其中包含一系列字符,如果我们要创建一个字符串然后将其打印出来:
String text = "Hello world!";
Console.WriteLine(text);
输出将是Hello World!
现在我可以说我自己做了class
:
public class Output
{
string aProperty;
int Count;
...
}
如果我要创建该类型的new object
并尝试将其写出来:
Output output = new Output();
Console.WriteLine(output);
我会回来的:
Namespace.Output
我如何更改此内容以便始终打印Output.aProperty
的内容而不是默认文字?
答案 0 :(得分:4)
textView.setBackgroundColor(android.R.color.transparent);
方法只是简单地写出对象的WriteLine
返回的内容。 ToString
在ToString
类中被定义为(虚拟),因此您需要覆盖它以获得“自定义”输出:
Object
答案 1 :(得分:2)
您只需要覆盖ToString()
方法(virtual
的{{1}}方法):
object
或者更好的C#6:
public class Output
{
string aProperty;
int Count;
public override string ToString()
{
return "I am an Output with aProperty: " + aProperty + " and Count " + Count;
}
}
答案 2 :(得分:2)
覆盖$variable="2016-01-07";
$lastChars = substr($variable, -2);
if($lastChars === "07"){
...
}
方法
ToString
答案 3 :(得分:2)
public override string ToString()
{
return aProperty;
}
当您使用调试器
时,此技术也非常有用答案 4 :(得分:2)
你在那里做的是调用ToString()
方法。所有clases都有一个ToString。默认情况下,它们具有从object
类中获取的那个,即命名空间。
所以你只需要覆盖你班级的ToString:
public class Output
{
string aProperty;
int Count;
...
public override string ToString()
{
return aProperty; //Or whatever you want
}
}
如果您将Ouput
对象放在列表框,组合框等上,这也会修改您看到的内容