[ Foro de Java ]

Necesito ayuda con un problema de generics

01-Sep-2021 15:24
Lorenzo Manghi
0 Respuestas

Se quiere implementar una central de turnos para una guardia.
Para ello se quiere guardar en una “Queue” los turnos que van sacando en el día logrando así una cola.
   • La “Queue” debe tener al menos un método add para agregar un turno al final, un pop que te devuelva el primero y lo elimine de la cola y un peek para poder revisar cual es el primero sin eliminarlo.
   • La colección Array es la única que pueden usar de java (Las demás no las vimos en clase aún).
Implementar todo lo necesario para que funcione el siguiente programa de prueba y además agregar lo que consideren en las líneas punteadas.
El programa de prueba agregando solamente código en las líneas punteadas debe devolver la salida que se encuentra debajo.


Pistas:
T[] elements = (T[]) new Comparable[INITIAL_DIM];
Creación de un array de elementos genéricos comparables
Pueden usar en algún momento Arrays.sort(elements,fromIndex,toIndex);



public class TesterTP3 {
public static void main(String[] args) {
Queue<MedicalShifts> queueHospital = new QueueImplement<>();
queueHospital.add(new MedicalShifts("harry", 0)); queueHospital.add(new MedicalShifts("hermione", 3)); queueHospital.add(new MedicalShifts("ron", 1)); queueHospital.add(new MedicalShifts("luna", 5)); queueHospital.add(new MedicalShifts("voldemort", 8));
System.out.println(queueHospital.peek()); System.out.println(queueHospital.isEmpty()); try {
System.out.println(queueHospital.pop());
} catch (EmptyQueueException emptyQueue) {
System.out.println(emptyQueue.getMessage());
}
System.out.println(queueHospital.peek());
System.out.println("<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"); queueHospital.add(new MedicalShifts("hagrid", 4));
for (MedicalShifts shifts : queueHospital) { System.out.println(shifts);
}
System.out.println("<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"); queueHospital.sort();
for (MedicalShifts shifts : queueHospital) { System.out.println(shifts);
}
System.out.println("<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"); System.out.println(queueHospital.min(........); }
harry false harry hermione
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
hermione ron luna voldemort hagrid
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ron hermione hagrid luna voldemort
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< hagrid




(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)