[C#] StringBuilder の数値計算

StringBuilder.Append メソッドを使用して文字列を連結する際に、引数に数値型が含まれている場合の挙動には注意を払う必要がある。
int price = 10000;
int tax = 800;

StringBuilder sb = new StringBuilder();
sb.AppendLine("合計金額 = " + price + tax);
sb.AppendLine("消費税 = " + price * 0.08);

// 合計金額 = 10000800
// 消費税 = 800
Console.WriteLine(sb.ToString());

文字型への変換が必要だと思われるが、プラス(+) を使用すると文字列として連結される。しかし、他の演算子を使用した場合は計算後の結果が文字列として連結される。
結果ですぐに気づくだろうが、注意しなければならない。

このブログの人気の投稿

Excel で入力した文字に勝手に取り消し線が入る

コピーした行の挿入が表示されない時はフィルタされていないかチェック