[ Foro de Java ]

Ayuda para corregir codigo

14-Dec-2022 18:40
Invitado (Adriana)
0 Respuestas

Ayuda con este codigo por favor:
package main;
import personas.*;
public class TAD {

public static void main(String[] args) {

TopArrayPersonas listaP= new TopArrayPersonas();
System.out.println("CAPACIDAD: "+listaP.getCapacidad()+"\n"
+"CANTIDAD: "+listaP.getCantidad()+"\n"
+"VACIA: "+listaP.esVacio()+"\n"
+"LLENA: "+listaP.esLlena());

for(int i=1; i<=20; i++) {
listaP.insertarFinal(new Persona("N"+i,"A"+i,"D"+i,"Na"+i,i));

}
for(int i=0; i<=listaP.getCantidad()-1;i++) {
System.out.println(listaP.getPersona(i));

}
}
}

package personas;

public class Persona {
public static final int EDAD_MAXIMA=100;
public static final int MAYORIA_EDAD=18;
private String nombre, apellido,documento,nacionalidad;
private int edad;

//OPERACIONES CONSTRUCTORAS: Permite crear objetos
public Persona(String nombre, String apellido,String documento,String nacionalidad,int edad) {
this.nombre=nombre;
this.apellido=apellido;
this.documento=documento;
this.nacionalidad=nacionalidad;
this.edad=edad;

}
//OPERACIONES SELECTORAS: Obtienen info del dato abstracto
public String obtenerNombre() {
return this.nombre;
}
public String obteneApellido() {
return this.apellido;
}
public String obtenerDocumento() {
return this.documento;
}
public String obtenerNacionalidad() {
return this.nacionalidad;
}
public int obtenerEdad() {
return this.edad;
}
//OPERACIONES MODIFICADORAS: Permite cambiar el estadp de ese tipo de dato
public void establecerNombre(String nombre) {
this.nombre=nombre;
}
public void establecerApellido(String apellido) {
this.apellido=apellido;
}
public void establecerDocumento(String documento) {
this.documento=documento;
}
public void establecerNacionalidad(String nacionalidad) {
this.nacionalidad=nacionalidad;
}
public void establecerEdad(int edad) {
if(edad<1||edad>=EDAD_MAXIMA) {
this.edad=1;
}else {
this.edad=edad;
}
}
//OPERACIONES PREDICADO: Operaciones booleanas que permiten saber si una condicion se cumple
public boolean mayorEdad() {
return this.edad>=MAYORIA_EDAD;
}
//OPERACIONES DESTRUCTORAS; Permite qutar info al objeto
}

package personas;
public class TopArrayPersonas {
public static final int DEFAULT_ARRAY_LENGTH=1000;

private Persona []listaPersona;
private int tope;

public TopArrayPersonas() {
this.listaPersona=new Persona[DEFAULT_ARRAY_LENGTH];
this.tope=-1;
}
//SEGUNDO CONSTRUCTOR
public TopArrayPersonas(int capacidad) {
capacidad= (capacidad<=0)? DEFAULT_ARRAY_LENGTH:capacidad;
this.listaPersona=new Persona[capacidad];
this.tope=-1;
}
//TERCER CONSTRUCTOR: DE PARAMETROS VARIABLES
public TopArrayPersonas(int capacidad,Persona...lista) {
capacidad= (capacidad<lista.length) ? lista.length:capacidad;
this.listaPersona=new Persona[capacidad];
this.tope=-1;

}
public void insertarFinal(Persona p) {
this.tope++;
this.listaPersona[this.tope]=p;
}
//TAREA
public void insertarInicio(Persona p) {
this.insertarEn(0, p);

}
public void insertarEn(int indice,Persona p) {
if(indice>=0 && indice<=this.tope) {
this.listaPersona[indice]=p;
}

}
public int getCapacidad() {
return listaPersona.length;
}
public int getCantidad() {
return this.tope=this.tope+1;
}
public Persona getPersona(int indice) {

return this.listaPersona[indice];



}
public boolean esValido(int indice) {
return (indice>=0)&&(indice<=this.tope-1);
}
public boolean esLlena() {
return this.tope==this.listaPersona.length-1;
}
public boolean esVacio() {
return this.tope==-1;
}
public Persona quitarUltima() {
Persona p= this.listaPersona[this.tope];
this.listaPersona[this.tope]=null;
this.tope--;
return p;
}
public Persona quitarEn(int indice) {
Persona p= this.listaPersona[indice];
this.listaPersona[indice]=null;
this.tope=this.tope+ indice;
return p;

}
public Persona quitarPrimero() {
return this.quitarEn(0);
}

}






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)