Dudas de novato... JAVA
Tengo que hacer un programa que genere un array de n elementos, y si es necesario, aumentar la capacidad, para lueo hacer un método que recorra el array y, en el caso en que haya datos repetidos, los elimine y solo deje uno de ellos...
Por ejemplo
[1,2,3,1,2,3,4]=[1,2,3,4].
Entonces, te explico mi "planteamiento", hacer 3 clases: CrearVector, DuplicarVector y EliminarRepetidos.
CrearVector:
public static class CrearVector{
Scanner stdin= new Scanner(System.in);
int capacidad;
System.out.println("¿Qué tamaño quiere que tenga el array?");
capacidad=stdin.nextInt();
String [] vector;
vector = new String[capacidad];
}
DuplicarVector:
public static class DuplicarVector{
boolean ocupado;
ocupado=false;
int i=0;
//Comprueba si el vector está ocupado en su totalidad.
for(i=0;i<vector.length; i++){
if(vector== null){
ocupado = true;
}
}
//si falta espacio lo duplica.
if(ocupado==true){
int n = vector.length;
n=2*n;
String[]vectorAmpliado = new String[n];
for(i=0; i<(n/2); i++){
vectorAmpliado=vector;
}
}
}
Y el eliminar repetidos no se como hacerlo, al igual que poner los getters y los setters; ya que una vez que los tenga si se llamar a los métodos... Pero hasta entonces...
También me gustaría saber como comprobar que el array no está vacío con enteros y no con string, lo he hecho así porque el string si se puede rellenar a null, mientras que el int no me deja.
Por ejemplo
[1,2,3,1,2,3,4]=[1,2,3,4].
Entonces, te explico mi "planteamiento", hacer 3 clases: CrearVector, DuplicarVector y EliminarRepetidos.
CrearVector:
public static class CrearVector{
Scanner stdin= new Scanner(System.in);
int capacidad;
System.out.println("¿Qué tamaño quiere que tenga el array?");
capacidad=stdin.nextInt();
String [] vector;
vector = new String[capacidad];
}
DuplicarVector:
public static class DuplicarVector{
boolean ocupado;
ocupado=false;
int i=0;
//Comprueba si el vector está ocupado en su totalidad.
for(i=0;i<vector.length; i++){
if(vector== null){
ocupado = true;
}
}
//si falta espacio lo duplica.
if(ocupado==true){
int n = vector.length;
n=2*n;
String[]vectorAmpliado = new String[n];
for(i=0; i<(n/2); i++){
vectorAmpliado=vector;
}
}
}
Y el eliminar repetidos no se como hacerlo, al igual que poner los getters y los setters; ya que una vez que los tenga si se llamar a los métodos... Pero hasta entonces...
También me gustaría saber como comprobar que el array no está vacío con enteros y no con string, lo he hecho así porque el string si se puede rellenar a null, mientras que el int no me deja.
Respuesta de dev_java_eve
1