Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: @mayakoski en 20 de Marzo 2020, 20:30

Título: Java ejercicios resueltos interface Comparator api java metodo compare CU00918C#
Publicado por: @mayakoski en 20 de Marzo 2020, 20:30
Planteo mi solución al ejercicio CU00918C del tutorial pdf de programación Java avanzada de aprenderaprogramar, espero les sirva

saludos


Código: [Seleccionar]
package claseCU00918C;

import java.util.Scanner;

public class Estudiante implements Comparable<Estudiante> {
private String nombre;
private int edad;
private int curso;

public Estudiante(String pNombre, int pEdad, int pCurso) {
this.nombre = pNombre;
this.edad = pEdad;
setCurso(pCurso);
}

@Override
public int compareTo(Estudiante o) {
return this.nombre.compareTo(o.nombre);
}

public String toString() {
return "El estudiante se llama: " + nombre + " tiene: " + edad + " años y esta en el " + curso + " curso"
+ "\n";
}

public String getNombre() {
return nombre;
}

public int getEdad() {
return edad;
}

public int getCurso() {
return curso;
}

public void setCurso(int curso) {
Scanner entradaTeclado = new Scanner(System.in);
if (curso < 5 && curso > 0) {
this.curso = curso;
} else {
do {
System.out.println("El curso ingresado para el Estudiante " + this.nombre
+ " no es valido Ingrese un curso valido");
curso = entradaTeclado.nextInt();
} while (curso > 5 || curso < 0);
this.curso = curso;
}
}
}


Código: [Seleccionar]
package claseCU00918C;

import java.util.Comparator;

public class OrdenEstudiantePorEdad implements Comparator<Estudiante> {

@Override
public int compare(Estudiante o1, Estudiante o2) {
return o1.getEdad() - o2.getEdad() ;
}

}


Código: [Seleccionar]
package claseCU00918C;

import java.util.Comparator;

public class OrdenEstudiantePorCurso implements Comparator<Estudiante> {

@Override
public int compare(Estudiante o1, Estudiante o2) {
return o1.getCurso() - o2.getCurso();
}

}


Código: [Seleccionar]
package claseCU00918C;

/* Ejemplo Interface Comparator aprenderaprogramar.com */

import java.util.ArrayList;

import java.util.Collections;

public class Programa {

public static void main(String arg[]) {
ArrayList<Estudiante> listaEstudiantes = new ArrayList<Estudiante>();
listaEstudiantes.add(new Estudiante("Carlos", 19, 3));
listaEstudiantes.add(new Estudiante("Felipe", 21, 1));
listaEstudiantes.add(new Estudiante("Ana", 18, 4));
listaEstudiantes.add(new Estudiante("Rosa", 15, 1));
listaEstudiantes.add(new Estudiante("Jose", 10, 2));

System.out.println("Estudiantes sin orden: \n" + listaEstudiantes);
listaEstudiantes.toString();

Collections.sort(listaEstudiantes);
System.out.println("Estudiantes ordenados por Nombre: \n" + listaEstudiantes);
listaEstudiantes.toString();

Collections.sort(listaEstudiantes, new OrdenEstudiantePorEdad());
System.out.println("Estudiantes ordenados por Edad: \n" + listaEstudiantes);
listaEstudiantes.toString();

Collections.sort(listaEstudiantes, new OrdenEstudiantePorCurso());
System.out.println("Estudiantes ordenados por Curso: \n" + listaEstudiantes);
listaEstudiantes.toString();
}

}
Título: Re:Java ejercicios resueltos interface Comparator api java metodo compare CU00918C#
Publicado por: Ogramar en 13 de Septiembre 2020, 13:06
Buenas, ejercicio correctamente resuelto. Salu2