gpt4 book ai didi

c# - C# 内插字符串中的可选参数有什么用?

转载 作者:IT王子 更新时间:2023-10-29 04:20:30 28 4
gpt4 key购买 nike

内插字符串是 C# 6.0 的新功能之一。

根据 MSDN,嵌入式 C# 表达式的语法可以包含一个可选的逗号分隔值,视为 <optional-comma-field-width>documentation .

很遗憾,我没有找到此字段的用途。

从它的名字可能会认为这个值设置了“插值”字段的最大大小,但是当我尝试以下表达式时:

var p = Process.GetCurrentProcess();
Console.WriteLine($"Process name is {p.ProcessName, 5}");

我得到以下输出:

Process name is LINQPad.UserQuery

最佳答案

这是用于该字段的最小宽度,而不是最大。由于您的字符串比您为宽度指定的 5 个字符长,因此该字段会扩展到您的字符串的长度。您会发现宽度越长,差异越显着:

var p = Process.GetCurrentProcess();
$"Process name is {p.ProcessName, 50}".Dump();

产量:

Process name is                                  LINQPad.UserQuery

正的字段大小是右对齐的;负字段大小是左对齐的。

Composite Formatting 上的文档更好MSDN页面:

The optional alignment component is a signed integer indicating the preferred formatted field width. If the value of alignment is less than the length of the formatted string, alignment is ignored and the length of the formatted string is used as the field width. The formatted data in the field is right-aligned if alignment is positive and left-aligned if alignment is negative. If padding is necessary, white space is used. The comma is required if alignment is specified.

关于c# - C# 内插字符串中的可选参数有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32620851/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com