Поиск объекта в списке по определенному критерию (второе по величине значение)JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Поиск объекта в списке по определенному критерию (второе по величине значение)

Сообщение Anonymous »

У меня есть список, и мне нужно найти конкретный объект. Я должен отсортировать список по значению средней оценки учащихся и создать функцию, которая
ищет ученика со вторым по величине значением. Если он дублируется с другим учеником, функция возвращает младшего.
Другое требование этой задачи (которое необходимо правильно решить) заключается в том, что я не могу создать какой-либо объект. Вот код класса, с которым я работаю:

Код: Выделить всё

import java.time.LocalDate;
import java.util.Comparator;
import java.util.List;

public class Student implements Comparator{
private String firstName;
private String lastName;
private LocalDate dateOfBirth;
private double averageMark;

public double getAverageMark() {
return averageMark;
}

//function below must find student that I described upper. Currently
//function is incomplete because I still try to find correct solution
public static Student findSecondBestStudent(List students) {

return students.stream().sorted(Comparator.reverseOrder());
}

@Override
public int compare(Student o1, Student o2) {
return (int) (o1.getAverageMark() - o2.getAverageMark());
}
}
На данный момент я попытался решить эту проблему, выполнив обратную сортировку потока, затем удалив первое значение потока, сравнив два следующих объекта потока и вернув правильный.
Я могу решить эту проблему с помощью цикла for, но это решение не соответствует условию задачи (требуется создать объект)

Подробнее здесь: https://stackoverflow.com/questions/675 ... test-value
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Python: как найти второе по величине число в списке?
    Anonymous » » в форуме Python
    0 Ответы
    148 Просмотры
    Последнее сообщение Anonymous
  • Получите второе по величине число в списке в линейное время
    Anonymous » » в форуме Python
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Как найти наибольшее и второе по величине число в массиве без использования функции max
    Anonymous » » в форуме Php
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Как найти наибольшее и второе по величине число в массиве без использования функции max
    Anonymous » » в форуме Php
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous
  • Завершить поток, когда значение соответствует критерию, в противном случае собрать в коллекцию.
    Anonymous » » в форуме JAVA
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»