Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 这是确定INT列表包含0的最佳方法吗?_C# - Fatal编程技术网

C# 这是确定INT列表包含0的最佳方法吗?

C# 这是确定INT列表包含0的最佳方法吗?,c#,C#,这是确定列表ALogMsgTypeIntArray包含0的最佳方法吗 if (ALogMsgTypeIntArray.Exists(delegate(int i) { return i == 0; })) { MessageBox.Show("0 exists"); } ========== 更新: 我最终是这样做的: bGetDebug = ALogMsgTypeIntList.Contains(LogParsePumpViewerConsts.LOG_MSG_TYPE_DEBUG)

这是确定列表ALogMsgTypeIntArray包含0的最佳方法吗

if (ALogMsgTypeIntArray.Exists(delegate(int i) { return i == 0; }))
{
    MessageBox.Show("0 exists");
}
========== 更新:

我最终是这样做的:

bGetDebug = ALogMsgTypeIntList.Contains(LogParsePumpViewerConsts.LOG_MSG_TYPE_DEBUG);
bGetInfo = ALogMsgTypeIntList.Contains(LogParsePumpViewerConsts.LOG_MSG_TYPE_INFORMATION);
bGetWarning = ALogMsgTypeIntList.Contains(LogParsePumpViewerConsts.LOG_MSG_TYPE_WARNING);
bGetError = ALogMsgTypeIntList.Contains(LogParsePumpViewerConsts.LOG_MSG_TYPE_ERROR);
您可以使用:


这取决于你的“最佳”标准。如果“最短源代码”是您的主要目标,那么答案是否定的:

if (ALogMsgTypeIntArray.Exists(i => i == 0) 
{ 
    MessageBox.Show("0 exists"); 
} 

为了OP的好处,我要指出,
I=>I==0
只是
delegate(inti){return I==0;}
。您应该将
列表命名为
…IntList
,而不是
…IntArray
,因为这可能会混淆其他开发人员如何使用您的变量。int数组应该是
int[]
@Douglas:这不仅适用于其他开发人员;)问题标题中包含你应该使用的方法的名称,这有点讽刺。@Douglas:你的建议更好,但仍然不太好。名称不应该包含类型机制的描述,也不应该包含abbrvtns。这个名称的正确名称类似于
MessageTypes
。常量应该类似于
LogParsePumpViewerType.Debug
,而不是
LogParsePumpViewerConsts.LOG\u MSG\u TYPE\u Debug
。本地人不应以“匈牙利”式前缀作为前缀;使用
getDebug
,而不是
bGetDebug
。请阅读框架设计指南,了解关于如何遵循最佳命名实践的许多好建议。@phoog:我个人不会使用“Db”。还有其他一些有趣的命名案例:例如System.Security.Cryptography.RSA。一方面,指导方针说不要把大写字母放在一起。另一方面,没有人想轻视沙米尔和阿德尔曼。礼貌,在这种情况下,赢了。不开玩笑,你的化身看起来非常像(当然是漫画)我的长子(他28岁)。
if (ALogMsgTypeIntArray.Exists(i => i == 0) 
{ 
    MessageBox.Show("0 exists"); 
} 
ALogMsgTypeIntArray.Any(item => item == 0)