使用元组来交换值 (IDE0180)
属性 | 值 |
---|---|
规则 ID | IDE0180 |
标题 | 使用元组来交换值 |
类别 | Style |
Subcategory | 语言规则(表达式级首选项) |
适用的语言 | C# |
选项 | csharp_style_prefer_tuple_swap |
概述
此样式规则标记使用多行代码而不是使用元组来交换两个值的代码。
选项
选项指定你希望规则强制实施的行为。 若要了解如何配置选项,请参阅选项格式。
csharp_style_prefer_tuple_swap
属性 | 值 | 说明 |
---|---|---|
选项名称 | csharp_style_prefer_tuple_swap | |
选项值 | true |
首选使用元组来交换两个值。 |
false |
禁用规则。 | |
默认选项值 | true |
示例
List<int> numbers = new List<int>() { 5, 6, 4 };
// Violates IDE0180.
int temp = numbers[0];
numbers[0] = numbers[1];
numbers[1] = temp;
// Fixed code.
(numbers[1], numbers[0]) = (numbers[0], numbers[1]);
抑制警告
如果只想抑制单个冲突,请将预处理器指令添加到源文件以禁用该规则,然后重新启用该规则。
#pragma warning disable IDE0180
// The code that's violating the rule is on this line.
#pragma warning restore IDE0180
若要对文件、文件夹或项目禁用该规则,请在配置文件中将其严重性设置为 none
。
[*.{cs,vb}]
dotnet_diagnostic.IDE0180.severity = none
若要禁用所有代码样式规则,请在配置文件中将类别 Style
的严重性设置为 none
。
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
有关详细信息,请参阅如何禁止显示代码分析警告。