はじめに
入力した値をUI上に表示したり、コンソール画面に出力する際、数値型を文字列で表示するのにずっとstring.Format()やtoString()を使用していましたが、文字列補間が便利でした。
方法
文字列補完は、$マークを使って文字列に変数を埋め込む方法です。
console.css
int num1 = 123;
Console.WriteLine($"出力: この本の値段は{num1}円です。");
// 出力: この本の値段は123円です。
C# における文字列補間によると、文字列補完では以下の通り、書式設定された式の結果の最小フィールド幅と配置を指定したり、フォーマットを指定できます。
{<interpolationExpression>,<alignment>:<formatString>}
- interpolationExpression: 埋め込む値
- alignment: フィールド幅。負の数の場合は左寄せ。フィールド幅が埋め込む値より大きければ空白で埋める。
- formatString: 数値のフォーマット指定。正;負;0
例えば、幅12で左揃え、埋め込み値が正の時はそのまま、負の時は頭に▼つき、0の時はカッコ囲いとする場合は以下のようになります。
example
int num1 = 123;
int num2 = -456;
int num3 = 0;
Console.WriteLine($出力1: "|{num1,-12:#;▼#;(0)}|");
Console.WriteLine($出力2: "|{num2,-12:#;▼#;(0)}|");
Console.WriteLine($出力3: "|{num3,-12:#;▼#;(0)}|");
// 出力1: |123 |
// 出力2: |▼456 |
// 出力3: |(0) |