我想覆盖ToString()int 的方法(这是一个类的一部分),这样如果int的值为0,则ToString()应该返回一个空字符串"".可以这样做吗?
更新 很容易创建一个
public string AmountToString {
get { if (Amount != 0) return Amount.ToString(); else return ""; }
}
Run Code Online (Sandbox Code Playgroud)
我只是想知道它是否可以在一个原始类型上实现(ToString())
seh*_*ehe 11
三种主要方法:
所以你可以使用i.ToString(formatprovider);
编辑我想我发现了一个自定义格式字符串,它与默认的.NET数字格式提供程序一起使用:
i.ToString("0;-0;"); // works
Run Code Online (Sandbox Code Playgroud)
i.ToString("##;(##);**Zero**"); // would return "**Zero** instead
Run Code Online (Sandbox Code Playgroud)
小费:
您可以自己加载Format Utility,这是一个应用程序,可以将格式字符串应用于数字或日期和时间值,并显示结果字符串.
public static string ToStringOrEmpty(this int i)
{
return (0==i)? string.Empty : i.ToString();
}
Run Code Online (Sandbox Code Playgroud)
class X
{
int member;
public string getMember() { return (0==member)? string.Empty : member.ToString();
}
Run Code Online (Sandbox Code Playgroud)