Necesito una ayuda enserio y lo peor es que es urgente

Si mira, lo que pasa es que tengo que hacer un programa que haga unas cuentas bancarias con arreglos, en donde se pide el nombre, el numero y el saldo, eso ya lo tengo listo pero hay un punto en el que me dicen que tengo que ordenar las cuentas por nombre es decir que si en las cuentas hay datos como estos:
123 Kelly 20.000
456 Andrea 50.000
Debe quedar así:
456 Andrea 50.000
123 Kelly 20.000
¿Existe algún método para hacerlo? Gracias
Respuesta
1
Si que existen formas de hacerlo, pero primero debería saber como almacenas la información, es decir, si lo hacer con un arreglo de objetos "Cuenta" (formado por nombre, numero y saldo) o bien tienes un arreglo por cada valor (arreglo de nombres, arreglo de números, ...)
Dime como lo tienes estructurado y te diré como se puede hacer.
Es un arreglo de objetos "Cuenta" formada por nombre numero y saldo muchas gracias
Muy bien, pues lo que tienes que hacer es modificar el objeto Cuenta para que implemente la clase "Comparable". Entonces tendrás que añadir el método "compareTo" a tu clase y allí codificar la lógica de comparación entre 2 objetos Cuenta.
La clase Cuenta te quedará así:
public class Cuenta implements Comparable {
..... { Aquí tus métodos actuales } ....
   public int compareTo (Object obj) {
      Cuenta c = (Cuenta)obj;  // Hacer cast del objeto recibido.
      return nombre.compareTo(c.nombre);
   }
Una vez tengas esto escrito, lo único que tendrás que hacer es utilizar el método estático "sort" de la clase "Arrays" de esta manera:
   Arrays.sort(arregloDeCuentas);
Después de esto, el arreglo "arregloDeCuentas" lo tendrás ordenado.
Definitivamente eres el experto en esto, mira que te debo la vida no sabia como hacer eso pero tu pudiste resolver todos mis problemas con unas cuantas lineas, eres el mejor nunca cambies enserio derias ser profesor de esto fantástico muchísimas gracias enserio
Gracias... Gracias...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas