Расширенный цикл For - массив объектов

Хорошо, у меня есть класс Dog (), который принимает два параметра, строку и целое число. .
В этом классе есть метод bark (), который печатает строку в зависимости от целого числа, переданного в конструктор Dog ().

У меня также есть класс Kennel (), который создает массив из 5 Dog () s ... выглядит так:

public class Kennel
{
    Dog[] kennel = new Dog[5];
    public Kennel()
    {
        kennel[0] = new Dog("Harold",1);
        kennel[1] = new Dog("Arnold",2);
        kennel[2] = new Dog("Fido",3);
        kennel[3] = new Dog("Spot",4);
        kennel[4] = new Dog("Rover",5);
    }
}

Для начала, это работает, но кажется неправильным. Почему мне нужно начинать с Dog [] ... new Dog [5]? Может глупый вопрос ... Я новичок в этом.

В любом случае ... Меня попросили использовать "расширенный" цикл for для итерации по массиву, вызывающему bark ().

Итак, с традиционным циклом for это будет выглядеть так:

for (i=0;i<kennel.length;i++)
{
    kennel[i].bark();
}

Все просто, не так ли? Но как это реализовать с помощью синтаксиса for (type item: array)?

5
задан Harry Johnston 25 September 2012 в 23:08
поделиться