やりたいこと
int の数値を表示するときに正の数にはプラス、負の数にはマイナス、ゼロにはプラスをつけたい。
カスタム数値形式文字列
int.ToString()
で書式指定すればできそう。
こんな感じに書いてみる。
string plus = 1000.ToString("+#;-#;+0");
Console.WriteLine(plus); // +1000
string minus = (-1000).ToString("+#;-#;+0");
Console.WriteLine(minus); // -1000
string zero = 0.ToString("+#;-#;+0");
Console.WriteLine(zero); // +0
セミコロンで書式指定を区切ることで、前から順番に正の数・負の数・ゼロの場合に適用される。
参考
う~ん、覚えられない笑
なので、拡張メソッドで定義してしまおう。
public static class IntExtensions
{
public static string ToSignedString(this int src)
{
return src.ToString("+#;-#;+0");
}
}
あれ、ゼロにプラスって変かな。。。