Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

(Java) Как в массиве объектов? заставить выводить только определенный объект? (у кого id=true) внтр

Pipl Pepolov Ученик (100), закрыт 4 года назад
Вот код, Есть студент (id=false) и школьник (id=true), так вот в консоль должен вылезть только школьник. Как отсортировать разобрался, а вот такой момент неясен.

import java.util.Arrays;

public class Met {
public static void main(String[] args) {

People[] List = {
new Student(),
new Schoolboy()
};

Arrays.sort(List, (People x1, People x2)-> (x1.id()? 0:1) - (x2.id()? 0:1));
for(int a=0;a<List.length;a++)
System.out.println(List[a]);

}
}

class Student implements People{
private boolean id=false;
public boolean id() {
return id;
}

@Override
public String toString() {
return "People";
}

}

class Schoolboy implements People{
private boolean id=true;
public boolean id() {
return id;
}

@Override
public String toString() {
return "Schoolboy";
}
}

interface People {
boolean id();
}
Лучший ответ
Angel Профи (937) 4 года назад
просто пробегись циклом по массиву и проверь поле id. В чём вопрос-то?
Это всё равно что спросить как посчитать 2+2. Я даже теряюсь, что именно ответить. Без шуток.
Pipl PepolovУченик (100) 4 года назад
Реально затормозил

так решил
for(People a : List)
if(a.isId()==true){System.out.println(a);}
Angel Профи (937) так как id типа boolean то можно писать просто if(a.isId()){System.out.println(a);}
Остальные ответы
Голова Робота Просветленный (36328) 4 года назад
Оператор if тебе не знаком?
Pipl PepolovУченик (100) 4 года назад
только как его всунуть то туда
Голова Робота Просветленный (36328) Тебе написали в предыдущем вопросе. Ты изучаешь Java в неправильной последовательности. Сначала надо изучить обычное процедурное программирование, в том числе циклы и уловный оператор. Потом уже изучать ООП.
Похожие вопросы