Esta ves te traigo un ejemplo de como ordenar vectores paralelos (vectores con el mismo numero de componentes)
import java.util.Scanner;
public class MetodosOrdenamientoVectoresParalelos {
private Scanner teclado;
private String[] paises;
private int[] habitantes;
public void cargar() {
teclado=new Scanner(System.in);
paises=new String[5];
habitantes=new int[5];
System.out.println("Carga de paises y habitantes");
for(int f=0;f<paises.length;f++) {
System.out.print("Ingese el nombre del pais:");
paises[f]=teclado.next();
System.out.print("Ingrese la cantidad de habitantes:");
habitantes[f]=teclado.nextInt();
}
}
public void ordenarPorNombres() {
for(int k=0;k<paises.length;k++) {//.length nos devuelve la cantidad de componentes del arreglo
for(int f=0;f<paises.length-1-k;f++) {
if (paises[f].compareTo(paises[f+1])>0) {
String auxpais;
auxpais=paises[f];
paises[f]=paises[f+1];
paises[f+1]=auxpais;
int auxhabitante;
auxhabitante=habitantes[f];
habitantes[f]=habitantes[f+1];
habitantes[f+1]=auxhabitante;
}
}
}
}
///Ordena de mayor a menor
public void ordenarPorHabitantes() {//3,3
for(int k=0;k<paises.length;k++) {//0.
for(int f=0;f<paises.length-1-k;f++) {//0,1.2
if (habitantes[f]<habitantes[f+1]) {
String auxpais;
auxpais=paises[f];
paises[f]=paises[f+1];
paises[f+1]=auxpais;
///aprovechamos este y ordenamos tambien el numero de habitantes
int auxhabitante;
auxhabitante=habitantes[f];
habitantes[f]=habitantes[f+1];
habitantes[f+1]=auxhabitante;
}
}
}
}
///Metodo utilizado para mostrar los arreglos
public void imprimir() {
for(int f=0;f<paises.length;f++) {
System.out.println(paises[f] + " - " + habitantes[f]);
}
}
///metodo principal
public static void main(String[] ar) {
MetodosOrdenamientoVectoresParalelos pv=new MetodosOrdenamientoVectoresParalelos();
pv.cargar();///Llamamos primero a este metodo
pv.ordenarPorNombres();///luego este
System.out.println("Ordenados alfabéticamente");//Mostramos este mensaje
pv.imprimir();//....
pv.ordenarPorHabitantes();
System.out.println("Ordenados por cantidad de habitnates");
pv.imprimir();
}
}