Al grano! Estoy haciendo un programa en el cual segun lo tengo diseñado, un metodo reciba 2 vectores y posteriormente invoque a otro metodo, sin devolver nada. Vamos bien.. pero ahora bien, al recibir, 2 vectores debo comparar la uno de ellos en función de otro. Me explico.
Supongamos que tengo un metodo (inventado sobre la marcha) que recibe una lista de x nombres de dependientas de un establecimiento y tienen otro vector que recibe una lista correspondiente al nombre con el dinero que cobra cada dependienta. Quiero almacenar en 2 nuevas matrices... los nombres y el dinero exacto que cobran las dependientas que tengan mas de 1000 euros.
Código
//Creo los nuevos vectores apuntando a null ya que no se la longitud de las nuevas matr. int dinero2[] = null; //Inicio bucle for...para recorrer e ir añadiendo segun los requerimientos: for(int i=0; nombres.legth;i++){ if(dinero[i]>=5){ nombre2[i]=nombre[i]; dinero2[i] = dinero[i]; } } metodo_imprimir (nombre2,dinero2); }
El error viene dado por una excepción por el null de las dos matrices. (NullpointerException). Que para este caso en concreto por mas que miro... nose.. creo que se me escapa algo y nose qué.
También pensé en crear un contador, dentro de la matriz para que cuando acabase el bucle se quedara definida la dimension del vector, pero es una tonteria, teniendo en cuenta que eso lo hace la variable i del bucle for.
Otra cosa que pense es inicializar las matrices dentro del bucle pero no tiene sentido, el error seguiría viniendo al ser declaradas como null y cada interación del bucle volveria a crear la matriz. No sé si me comprendeis.
Algo se me escapa, alguien me ayuda?
P.D. El programa no es el real, es meramente un ejemplo..
P.D.2. La duda real sería, ¿Como utilizar un array unidimensional con una longitud variable que no sabemos y que viene dada dependiendo de otra dentro de un bucle for?
Saludos!