2016-02-01 22 views
-6

這是我創建如何檢查整數是否在數組中?

int[] Numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; 

代碼的例子我想這樣做是是一個小腳本,可以檢查一個數是數組中,並返回一個布爾值,例如3將返回true和13將返回false,否則我能想到的唯一的辦法就是這個

if ((UserInput == Numbers[0]) || (UserInput == Numbers[1]) || (UserInput == Numbers[2]) || (UserInput == Numbers[3])) 
+2

Number.Contains(UserInput) 。編寫代碼還涉及到搜索和學習 – Steve

+3

_「我能想到的唯一方法」_您至少需要了解循環結構,但也有速記方法。 –

+1

我很驚訝,沒有人找不到重複。 –

回答

2

可以使用LINQ擴展方法Contains

bool containsNumber = Numbers.Contains(UserInput); 

如果UserInputstring,你應該先分析它:

int i; 
if (int.TryParse(UserInput, out i)) // parse the string, and put it in i 
{ 
    bool containsNumber = Numbers.Contains(i); 
} 
else 
{ 
    // report to user the input is wrong 
} 

如果你想手動執行Contains檢查,您可以使用此:

bool containsNumber = false; 

foreach (int n in Numbers) // go over every number in the list 
{ 
    if (n == UserInput) // check if it matches 
    { 
     containsNumber = true; 
     break; // no need to check any further 
    } 
} 
1
bool containsNumber = Numbers.Contains(13);