Создать класс со списком объектов произвольной природы (любой класс). Класс включает в себя метод, который называется
PrintList
с логическим параметром. Метод выводит на консоль нечетные или четные элементы списка, взависимости от величины параметра (true или false).
- Строим обобщенный класс
- Объявляем ArrayList c параметрическим типом (создаем список)
- Создаем метод, заполняющий список данными
- Создаем метод, печатающий либо четные либо нечетные значения
public class PrintList<T> {
private ArrayList<T> list = null;
public PrintList() {
list = new ArrayList<T>();
}
public void add(T data) {
list.add(data);
}
public void printList(boolean isOdd) {
int size = list.size();
if (isOdd) {
for (int i = 1; i < size; i += 2) {
System.out.println(list.get(i).toString());
}
} else{
for (int i = 0; i < size; i += 2) {
System.out.println(list.get(i).toString());
}}}
}
Создаю объект класса PrintList
, но с конкретным классом String
вместо параметрического типа. Заполняю список. Он будет состоять из 10 строк. И теперь если plS.printList(true)
, то выведутся четные строки. А если plS.printList(false)
, то нечетные.
public static void main(String[] args) {
PrintList<String> plS = new PrintList<String>();
for (int i = 0; i < 10; i++){
plS.add("" + i);
}
plS.printList(true);
Затем создаю объект класса PrintList
только вместо String
используется Integer
и выводятся нечетные значения.
PrintList<Integer> plI = new PrintList<Integer>();
for (int i = 0; i < 10; i++){
plI.add(i);
}
plI.printList(false);
}
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ