gpt4 book ai didi

C# 运算符和可读性

转载 作者:太空狗 更新时间:2023-10-29 22:02:53 26 4
gpt4 key购买 nike

我只是在编写一些代码,发现自己犯了这个错误

if (stringName == "firstName" || "lastName")
// Do code

显然这是错误的,应该是

if (stringName == "firstName" || stringName == "lastName")
// Do code

但这让我开始思考可读性,第一个会更容易吗?也许有一些逻辑可以说除非指定新的 stringName,否则使用第一个?

真的不是问题,我只是好奇是否有什么我不完全理解编译这样的语句背后的逻辑。

最佳答案

我认为您的提议会使表达式解析规则变得困惑 - 现在,“==”变成了四元运算符 (?),而不是二元运算符。不过,我发现自己缺少 SQL 的“IN”运算符,并使用了类似这样的东西:

if (stringName.In("foo", "bar", "baz"))
{

}

// in an extension method class
public static bool In<T>(this T value, params T[] values)
{
return values.Contains(value);
}

关于C# 运算符和可读性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1615800/

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