Метод выбора порядкового номера ячейки массива

Есть класс телевизор, в нем метод tvOn , он принимает на вход число и должен из массива channels[] выбрать номер той ячейки которая соответствует этому числу. Не понимаю как описать это.

Код:

public class TV {
    String modelTV;
    Channel channnels[];
    RemoteController remote;

    public String getModelTV() {
        return modelTV;
    }
    public void setModelTV(String modelTV) {
        this.modelTV = modelTV;
    }
    public void setChannnels(Channel[] channnels) {
        this.channnels = channnels;
    }
    public void setRemote(RemoteController remote) {
        this.remote = remote;
    }

    public void tvOn(int channelNumber) {

        for (int i = 0, i < channnels.length, i++) {

        }
    }
}

Ответы (1 шт):

Автор решения: Павел Ериков

Вот пример, как вы хотели с комментариями:

public void tvOn(int channelNumber) {
    //Проходим по массиву каналов
    for (int i = 0; i < channnels.length; i++) {
        //Находим канал с индексом channelNumber 
        //(или номер, но это разные вещи и в вашем случае индекс)
        if (i == channelNumber) {
            //Выводим название канала обращаясь к массиву channnels
            //по индеску channelNumber к полю name
            System.out.println("Включен канал: " + channnels[channelNumber].name);
            //Моментальный выход из функции. Т.к. смысла дальше исказть нет
            //если мы уже нашли
            return;
        }
    }
    //Если же выход из функции не произошел, то мы не нашли канал с нужным номером
    System.out.println("Канал с номером " + channelNumber + " не найден!");
}

Приведу пример, как можно было написать:

public void tvOn(int channelNumber) {
    //Если переданный канал не отрицательный и не больше или равен кол-ву каналов
    if (channelNumber >= 0 && channelNumber < channnels.length) {
        //то выводим канал с номером channelNumber
        System.out.println("Включен канал: " + channnels[channelNumber].name);
    }
    else {
        //Если же номер канала не правильный (< 0) если канала 
        //с таким номером нет, то выводим информацию
        System.out.println("Канал с номером " + channelNumber + " не найден!");
    }
}

И да отвечаю на ваш последний комментарий, можно писать channnels[i].name это обращение к i-тому элементу массива channnels.

→ Ссылка