PRACTICA
crear un sistema que simule la aduana.
package adb;
/**
*
* @author Romina
*/
public class Aduana {
private String nombre;
private String tipo;
private String chasis;
private String motor;
private int modelo;
private String color;
private double costo;
public Aduana(){
nombre = "";
tipo = "";
chasis = "";
motor = "";
modelo = 0;
color = "";
costo = 0.0;
}
public Aduana(String nombre, String tipo, String chasis,
String motor, int modelo, String color, double costo){
this.nombre = nombre;
this.tipo = tipo;
this.chasis = chasis;
this.motor = motor;
this.modelo = modelo;
this.color = color;
this.costo = costo;
}
public void setNombre(String nombre){
this.nombre = nombre;
}
public void setTipo(String tipo){
this.tipo = tipo;
}
public void setChasis(String chasis){
this.chasis = chasis;
}
public void setMotor(String motor){
this.motor = motor;
}
public void setModelo(int modelo){
this.modelo = modelo;
}
public void setColor(String color){
this.color = color;
}
public void setCosto(double costo){
this.costo = costo;
}
public String getNombre(){
return nombre;
}
public String getTipo(){
return tipo;
}
public String getChasis(){
return chasis;
}
public String getMotor(){
return motor;
}
public int getModelo(){
return modelo;
}
public String getColor(){
return color;
}
public double getCosto(){
return costo;
}
public double getCostoNacionalizacion(){
if((modelo >= 2010)&&(modelo <= 2012)){
costo = costo * 0.30;
}
if((modelo >= 2005)&&(modelo <= 2009)){
costo = costo * 0.50;
}
if((modelo >= 1990)&&(modelo <=2004)){
costo = costo * 0.60;
}
return costo;
}
}
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package adb;
import adb.Lista.ExcepcionListaVacia;
/**
*
* @author Romina
*/
public class Cola {
private Lista listaCola;
public Cola(){
listaCola = new Lista("cola");
}
public void enqueue(Object objeto){
listaCola.insertarAlFinal(objeto);
}
public Object dequeue() throws ExcepcionListaVacia{
return listaCola.eliminarDelFrente();
}
public boolean estaVacia(){
return listaCola.estaVacia();
}
public void imprimir(){
listaCola.imprimir();
}
}
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package adb;
/**
*
* @author Romina
*/
public class Hilo extends Thread {
Splashcreen ref;
public Hilo(Splashcreen ref) {
this.ref = ref;
}
@Override
public void run() {
while (true) {
try {
Thread.sleep(100);
ref.Llenar_Barra();
} catch (InterruptedException ex) {
}
}
}
}
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package adb;
/**
*
* @author Romina
*/
public class Lista {
private Nodo primerNodo;
private Nodo ultimoNodo;
private String nombre;
Object datoRemover;
int pos = 0;
public Lista(){
this("lista");
}
public Lista(String nombreLista){
nombre = nombreLista;
primerNodo = ultimoNodo = null;
}
public boolean estaVacia(){
return primerNodo == null;
}
public void insertarAlFrente(Object elementoInsertar){
if(estaVacia())
primerNodo = ultimoNodo = new Nodo(elementoInsertar);
else
primerNodo = new Nodo(elementoInsertar, primerNodo);
}
public void insertarAlFinal(Object elementoInsertar){
if(estaVacia())
primerNodo = ultimoNodo = new Nodo(elementoInsertar);
else
ultimoNodo = ultimoNodo.siguienteNodo = new Nodo(elementoInsertar);
}
public Object eliminarDelFrente() throws ExcepcionListaVacia{
if(estaVacia())
throw new ExcepcionListaVacia(nombre);
Object elementoEliminado = primerNodo.datos;
if(primerNodo == ultimoNodo)
primerNodo = ultimoNodo = null;
else
primerNodo = primerNodo.siguienteNodo;
return elementoEliminado;
}
public void insertarNpos(Object elementoInsertar, int pos){
if(estaVacia())
//insertarAlFrente();
if(pos == 1){
//insertarAlFrente();
}
if(pos == cantNodo()){
//insetarAlFinal();
}
else{
Nodo actual = primerNodo;
for(int i = 0 ; i < pos - 1; i++){
actual = actual.siguienteNodo;
Nodo nuevo = new Nodo(elementoInsertar, actual.siguienteNodo);
}
}
}
public Object eliminarDelFinal() throws ExcepcionListaVacia{
if(estaVacia())
throw new ExcepcionListaVacia(nombre);
Object elementoEliminado = ultimoNodo.datos;
if(primerNodo == ultimoNodo)
primerNodo = ultimoNodo = null;
else{
Nodo actual = primerNodo;
while(actual.siguienteNodo != ultimoNodo)
actual = actual.siguienteNodo;
ultimoNodo = actual;
actual.siguienteNodo = null;
}
return elementoEliminado;
}
public Object eliminarNpos() throws ExcepcionListaVacia{
if(estaVacia())
throw new ExcepcionListaVacia(nombre);
if(pos == 1){
eliminarDelFrente();
}
else{
if(pos == cantNodo()){
eliminarDelFinal();
}
}
Object elementoEliminado = ultimoNodo.datos;
if(primerNodo.equals(ultimoNodo)){
primerNodo = ultimoNodo = null;
return elementoEliminado;
}
Nodo actual = primerNodo;
for(int i = 1 ; i < pos ; i++){
actual = actual.siguienteNodo;
elementoEliminado = (actual.siguienteNodo).datos;
actual.siguienteNodo = (actual.siguienteNodo).siguienteNodo;
(actual.siguienteNodo).siguienteNodo = null;
}
return elementoEliminado;
}
public void imprimir(){
if(estaVacia()){
System.out.printf("%s Vacia\n", nombre);
return;
}
System.out.printf("La %s es: ", nombre);
Nodo actual = primerNodo;
while(actual != null){
System.out.printf("%s ", actual.datos);
actual = actual.siguienteNodo;
}
System.out.println("\n");
}
public int cantNodo() {
Nodo actual = primerNodo;
int cant = 0;
while(actual != null){
cant++;
actual = actual;
}
return cant;
}
public class ExcepcionListaVacia extends RuntimeException{
public ExcepcionListaVacia(){
this("lista");
}
public ExcepcionListaVacia(String nombre){
super(nombre + "Esta Vacia");
}
}
}
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package adb;
/**
*
* @author Romina
*/
public class Nodo {
Object datos;//los datos para este nodo
Nodo siguienteNodo;//referencia al siguiente nodo de la lista
//el constructor crea un objeto Nodo que hace referencia al objeto
Nodo(Object objeto){
this(objeto, null);
}
Nodo(Object objeto, Nodo nodo){
datos = objeto;
siguienteNodo = nodo;
}
Object obtenerObject(){
return datos;
}
Nodo obtenerSiguiente(){
return siguienteNodo;
}
}
*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package adb;
/**
*
* @author Romina
*/
public class Pila extends Lista{
public Pila(){
super("pila");
}
public void push(Object objeto){
insertarAlFrente(objeto);
}
public Object pop() throws ExcepcionListaVacia{
return eliminarDelFrente();
}
}
0 comentarios:
Publicar un comentario