您好有办法在C#中检查特定数字的特定整数数组索引;例如,我希望工作的将是:
if(si[6] || si[7] || si[8] == 3)
{
MessageBox.Show("3 detected")
}
else
{
continue();
{
显然这不起作用。有干净的方法吗?谢谢你的期待。
答案 0 :(得分:10)
var indexes = new int[] {6, 7, 8};
if (indexes.Any(i => si[i] == 3))
{
MessageBox.Show("3 detected")
}
答案 1 :(得分:5)
最简单的是进行三次单独的检查:
if (si[6] == 3 || si[7] == 3 || si[8] == 3)
答案 2 :(得分:1)
你可以使用带参数的方法做一点整洁:
public static bool HasValue(int value, params int[] itemsToCheck)
{
bool valueDetected = false;
foreach(var item in itemsToCheck)
{
valueDetected |= item == value;
}
return valueDetected;
}
然后你就可以这样称呼它:
if (HasValue(3, si[6], si[7], si[8]))
{
}
答案 3 :(得分:1)
您可以使用Array.IndexOf函数查找整数的索引。如果array有整数,那么它将返回索引,否则它将返回-1。
喜欢这个 int [] a = new int [] {1,2}; int c = Array.IndexOf(a,2);