我经常发现自己在写类似于以下的条件句:
if(Path.GetExtension(filename) == ".pdf" || Path.GetExtension(filename)== ".doc")
{
// do something
}
每个我想测试的文件扩展名调用一次 Path.GetExtension() 似乎有点多余。当然,我可以做这样的事情:
string fileExtension = Path.GetExtension(filename);
if(fileExtension == ".pdf" || fileExtension == ".doc")
{
// do something
}
但考虑到我只使用 fileExtension 进行比较,没有别的,为文件扩展名声明一个变量似乎不是很优雅。
在 SQL 中,我可以使用 IN 运算符:
SELECT file FROM table WHERE fileExtension IN(".pdf", ".doc")
这使我可以在不重复的情况下进行测试。
C# 是否提供任何类似于 SQL 的语法糖,我不必重复被比较的变量或相等运算符?