Está en la página 1de 3

package practica11;

public class Almacen {

protected Object[] contenedor;


protected int tamaño = 10;

public Almacen() {
this.contenedor = new Object[10];
}

Almacen(int nuevoTamaño) {
this.tamaño = nuevoTamaño;
this.contenedor = new Object[this.tamaño];
}

public void guardar(Object objeto) {


int i = 0;
while ((i < this.tamaño) && (this.contenedor[i] != null)) {
i++;
}
if (i < this.tamaño) {
this.contenedor[i] = objeto;
}
}

public Object sacar(int indiceArreglo) {


Object objetoASacar = this.contenedor[indiceArreglo];
this.contenedor[indiceArreglo] = null;
return objetoASacar;
}

public void listar() {


for (int i = 0; i < this.tamaño; i++) {
if (null != this.contenedor[i]) {
System.out.print("[" + i + "]");
System.out.println(this.contenedor[i].toString());
}
}

}
public Info dameInformacion() {
return new Info(this);
}
}

package practica11;
public class Info implements Informacion
{
public Almacen almacen;

public Info(Almacen almacen) {


this.almacen=almacen;
}

@Override
public int dameNumeroObjetosAlmacenados() {
int i=0;
int cont=0;
for(i=0; i<this.almacen.tamaño; i++)
{
cont=i;
}
return cont;
}

@Override
public int dameNumeroHuecos() {
int i = 0, n=0;
for(i=0; i<this.almacen.tamaño; i++)
{
n=this.almacen.tamaño-1;
}
return n;
}

@Override
public boolean estaVacio(int i) {
boolean valor =false;
if(this.almacen.contenedor[i]==null)
{
valor=true;
}
return valor;
}
}

package practica11;

//
public class PruebaAlmacen {

public static void main(String[] args) {


Almacen almacen1 = new Almacen(5);
almacen1.guardar(new Integer(12345));
almacen1.guardar("Cadena de Prueba");
almacen1.guardar(new Double(3.14159235));
almacen1.guardar(new Integer(0));
almacen1.listar();
System.out.println("--------------Información----------------");
Info informacion1 = almacen1.dameInformacion();
System.out.print("El almacen tiene ");
System.out.print(informacion1.dameNumeroObjetosAlmacenados());
System.out.println(" Objetos");
System.out.print("El elemento 4 esta ");
if (informacion1.estaVacio(4)) {
System.out.println("Vacio");
} else {
System.out.println("Lleno");
}
}
}

package practica11;

public interface Informacion {

public int dameNumeroObjetosAlmacenados();


public int dameNumeroHuecos();
public boolean estaVacio(int i);

También podría gustarte