Я создаю класс целочисленного набора, в котором объект может содержать до 101 номера через булевский массив. Мое задание - использовать петли foreach, когда это возможно, но я не могу найти место, где я могу его использовать /, где было бы даже разумно использовать его.Когда/Как заменить цикл for с помощью foreach
Вот некоторые фрагменты моего кода, и я сделал программу точно так же, как мой учитель спросил. Я не могу полностью определить союз, установленный в петлю foreach, если это возможно. Может ли эта программа быть улучшена с помощью цикла foreach, и если да, то где?
public bool[] set = new bool[101];
public IntegerSet(){
for (int k = 0; k < set.Length; k++)
{
set[k] = false;
}
public IntegerSet unionSet (IntegerSet a)
{
IntegerSet c = new IntegerSet();
for (int i = 0; i < 101; i++)
{
if (a.set[i] == true || this.set[i] == true)
c.set[i] = true;
}
return c;
}
public bool isEqual(IntegerSet a)
{
int count = 0;
for (int i = 0; i < 101; i++)
{
if (a.set[i] == this.set[i])
count++;
}
if (count == 101)
return true;
else
return false;
}
Что такое 'set' ?? –
'public bool [] set = new bool [101];' – krikara
Не имеет прямого отношения к вашему вопросу, но ваш метод isEqual может быть более эффективным. Нет необходимости подсчитывать количество хороших совпадений - верните false, как только вы найдете неправильное совпадение. – siger