2015-10-29 2 views
-4

Рассмотрим следующий код:Чтение значения BOOL с использованием списка

public bool IsTwoInductions() 
{ 
    List<Induction> inductionList = GetInduction(); 
    int? introTime = 0; 
    foreach (var items in inductionList) 
    { 
    introTime = items.TotalTime; 
    } 
    if(introTime == 90) 
    { 
     return true; 
    } 
    else 
    { 
     return false; 
    } 
} 

Мой список содержит две записи с TotalTime == 90 и TotalTime == 120. Теперь, когда я вывожу значение утешать я

Правда

Правда

Но это должно быть True и False .. Где я буду неправильно?

+0

набор контрольных точек и шаг через код - Таким образом, вы будете видеть именно то, что он делает. – user1666620

+0

@ user1666620 Я сделал это, и я вижу, что «TotalTime» имеет правильные значения – Code

+0

и вы видите, что значение 'introTime', когда оно возвращает значения? – user1666620

ответ

1

Если я правильно понимаю:

private void SomeMethod() 
{ 
    List<int> inductionList = new List<int>() { 90, 120}; 
    int? introTime = 0; 
    bool isEquelToNinety = false; 
    foreach (var items in inductionList) 
    { 
     Console.WriteLine(isEquelToNinety=IsOK(items)); 
    }    
} 

private bool IsOK(int? introTime) 
{    
    if (introTime == 90) 
    { 
     return true; 
    } 
    else 
    { 
     return false; 
    } 
} 
+0

Это сработало для меня спасибо – Code

0

Вы пробовали это?

public bool IsTwoInductions() 
{ 
    List<Induction> inductionList = GetInduction(); 
    bool isHaving90 = false; 
    foreach (var items in inductionList) 
    { 
    introTime = items.TotalTime; 
    if(introTime == 90) 
    { 
     isHaving90 = true; 
     break; 
    } 
    } 
    return isHaving90; 
} 
+0

Я пробовал ваш код и получаю те же результаты. Я боюсь:/ – Code

+0

Можете ли вы поместить свой код, который пишет на консоль? –

+0

Спасибо за вашу помощь – Code

2
public void IsTwoInductions() 
{ 
    List<Induction> inductionList = GetInduction(); 
    int? introTime = 0; 
    foreach (var items in inductionList) 
    { 
    introTime = items.TotalTime; 

    if(introTime == 90) 
    { 
     Console.Write("true "); 
    } 
    else 
    { 
     Console.Write("false "); 
    } 
    } 
} 
+1

Это будет итерация по всему массиву и печать истинного, ложного согласия на то, что introtime для этой записи. – Thomas

+0

Спасибо за вашу помощь – Code

Смежные вопросы