8
22/2/2015 Curso de Java: Resolución del ejercicio de LinkedList http://www.redeszone.net/2012/03/19/cursodejavaresoluciondelejerciciodelinkedlist/ 1/8 Twittear 3 0 Curso de Java: Resolución del ejercicio de LinkedList Adrián Crespo | 19 marzo 2012 10:00 | 2 comentarios Otro lunes más, seguimos en RedesZone.net con el curso de Java. Continuamos con las estructuras de datos, en este caso con un ejercicio propuesto en la entrega anterior, relacionado con las LinkedList. Hoy también hablaremos de los ArrayList, y tendremos un ejemplo de lo mismo, a la vez que os propondremos un ejercicio para que practiquéis. Lo primero de todo vamos a dar solución al ejercicio de la semana pasada que si acordáis, estaba relacionado con un taller de reparación de coches. Vamos con la primera de las clases de nuestro ejercicio, la clase Reloj, que únicamente será la encargada de proporcionarnos una fecha y una hora para las fichas de nuestros vehículos del taller. Se trata de la misma implementación que en el ejemplo que o pusimos, por lo que podéis copiar y pegar tal cual está. 1 Me gusta 1 2 3 4 5 6 7 8 9 10 11 12 import java.util.Calendar; /** * Clase que permite obtener la fecha y hora actual, * en milisegundos desde la época */ public class Reloj { public static long ahora() { return Calendar.getInstance().getTimeInMillis(); } } Portada Android Banda Ancha Pepephone ADSL Bittorrent Redes Seguridad Informática Software Buscar Routers WiFi AC Puntos de Acceso Edimax Smart Life PLC Java PHP Smart Home Firmwares Manuales 5137 Me gusta Seguir a @redeszone 7,015 seguidores ¿Nos sigues? 2.309 ?

Curso de Java_ Resolución Del Ejercicio de LinkedList

Embed Size (px)

DESCRIPTION

dernm

Citation preview

  • 22/2/2015 CursodeJava:ResolucindelejerciciodeLinkedList

    http://www.redeszone.net/2012/03/19/cursodejavaresoluciondelejerciciodelinkedlist/ 1/8

    Twittear 3 0

    Curso de Java: Resolucin del ejercicio de LinkedListAdrinCrespo|19marzo201210:00| 2comentarios

    Otro lunes ms, seguimos en RedesZone.net con elcursodeJava.

    Continuamosconlasestructurasdedatos,enestecasocon un ejercicio propuesto en la entrega anterior,relacionadoconlasLinkedList.HoytambinhablaremosdelosArrayList,ytendremosunejemplodelomismo,ala vez que os propondremos un ejercicio para quepractiquis.

    Loprimerodetodovamosadarsolucinalejerciciodela semanapasadaque si acordis, estaba relacionadoconuntallerdereparacindecoches.

    Vamosconlaprimeradelasclasesdenuestroejercicio,la clase Reloj, que nicamente ser la encargada deproporcionarnosunafechayunahoraparalasfichasdenuestrosvehculosdeltaller.

    Setratadelamismaimplementacinqueenelejemploqueopusimos,porloquepodiscopiarypegartalcualest.

    1Megusta

    123456789

    101112

    importjava.util.Calendar;/***Clasequepermiteobtenerlafechayhoraactual,*enmilisegundosdesdelapoca*/publicclassReloj{publicstaticlongahora(){returnCalendar.getInstance().getTimeInMillis();}}

    Portada Android BandaAncha PepephoneADSL Bittorrent Redes SeguridadInformtica Software

    BuscarRouters WiFiAC PuntosdeAcceso EdimaxSmartLife PLC Java PHP SmartHome Firmwares Manuales

    5137Megusta Seguira@redeszone 7,015seguidores Nossigues? 2.309

    ?

  • 22/2/2015 CursodeJava:ResolucindelejerciciodeLinkedList

    http://www.redeszone.net/2012/03/19/cursodejavaresoluciondelejerciciodelinkedlist/ 2/8

    Setratadelamismaimplementacinqueenelejemploqueopusimos,porloquepodiscopiarypegartalcualest.

    Ahoravamosconlaprimeradelasclasesquenosinteresa,laclaseFichaVehiculo.Seencargarderecogertodoslosdatosreferidosalosvehculosqueentreeneltaller.Estarformaprincipalmenteporobservadoresdeatributos,queposeenvisibilidadprivada.

    12345678

    910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455

    publicclassFichaVehiculo{privatelongentrada,reparacion,salida;privateStringmodelo;privateStringmatricula;/**Constructor*/publicFichaVehiculo(Stringm,Stringma,longe)

    {modelo=m;matricula=ma;entrada=e;reparacion=0;salida=0;}publicStringmatricula(){returnmatricula;}publicStringmodelo(){returnmodelo;}publicvoidmodificaFechaEntrada(longfecha_entrada){entrada=fecha_entrada;}publicvoidmodificaFechaSalida(longfecha_salida){entrada=fecha_salida;}publicvoidmodificaFechaReparacion(longfecha_reparacion){entrada=fecha_reparacion;}publicbooleanestaArreglado(){if(reparacion!=0){returntrue;}else{returnfalse;}}/****************Observadoresdelasfechasdereparacinysalida****/publiclongfechaReparacion()

    AdaptadoresWiFi

    BancosdePrueba

    CmarasIP

    Mdems3G

    NAS

    PLC

    PuntosdeAcceso(AP)

    ReproductoresMultimedia

    Routers

    SAI

    Switches

    TelfonosIP

    AlfaNetwork

    ASUS

    CiscoLinksys

    Comtrend

    DLink

    Devolo

    Edimax

    FRITZ!

    Huawei

    HP

    Kaiboer

    Oceans

    OrangeLivebox

    Salicru

    Sitecom

    SpotCam

    Synology

    Thecus

    TPLINK

    TRENDnet

    Zaapa

    WesternDigital

    ZyXEL

    Android

    Bugtraq

    Chromecast

    CursodeRedes

    CursoHTMLyCSS

    CursoJava

    IPsec

    Latch

    MacOsX

    RaspberryPI

    Redes

    SeguridadInformtica

    Anlisis de producto

    Fabricantes

    Tutoriales de ayuda

    ?

  • 22/2/2015 CursodeJava:ResolucindelejerciciodeLinkedList

    http://www.redeszone.net/2012/03/19/cursodejavaresoluciondelejerciciodelinkedlist/ 3/8

    Estaclasenotienemayorescomplicaciones.Sisequiere,sepuedenaadirmsdatosatenerencuentaalahoraderegistrarunvehculo,yaqueesto,slosetratadeunmodelobsico.

    VamosconlaclaseGestionReparaciones,queimplementarlagestindevehculosdenuestrotaller.

    5556575859606162636465

    publiclongfechaReparacion(){returnreparacion;}publiclongfechaSalida(){returnsalida;}}

    123456789

    101112131415161718192021222324252627282930313233343536373839404142434445

    importjava.util.*;publicclassGestionReparaciones{//AtributosprivateLinkedListlista=newLinkedList();/**Metodoqueaadeunvehiculoparaserarregladoconunafecha*deentrada*@paramnombre*@parammatricula*/publicvoidanadeVehiculo(Stringnombre,Stringmatricula){longf=Reloj.ahora();FichaVehiculofich=newFichaVehiculo(nombre,matricula,f);//creamosunnuevovehculolista.add(fich);//aadimos}/**Metodoqueaadeunafechadereparacionaunvehiculo**@parammatricula*/publicvoidreparado(Stringmatricula){booleanencontrado=false;inti=0;while(!encontrado&&i

  • 22/2/2015 CursodeJava:ResolucindelejerciciodeLinkedList

    http://www.redeszone.net/2012/03/19/cursodejavaresoluciondelejerciciodelinkedlist/ 4/8

    Sepuedenaadirmsmtodossiquerispracticar,yaqueyosloheimplementadoelfuncionamientobsicodescritoenelenunciadodelejercicio.

    Yunpequeoprogramadepruebaparaverificarquetodofuncionabien.

    454647484950515253545556575859

    60616263646566676869707172737475767778798081828384858687888990919293949596

    }else{System.out.println("Erroralmodificarlafechadereparacindelvehculo"+matricula);}}/**Metodoqueaadeunafechadesalidaaunvehiculo**@parammatricula*/publicvoidfechaSalidaTaller(Stringmatricula){booleanencontrado=false;inti=0;while(!encontrado&&i

  • 22/2/2015 CursodeJava:ResolucindelejerciciodeLinkedList

    http://www.redeszone.net/2012/03/19/cursodejavaresoluciondelejerciciodelinkedlist/ 5/8

    Hasta aqu la solucin del ejercicio. Si habis tenido algn problema, o duda de implementacin, no dudis enpreguntarlo.

    VamosconelejemplodelosArrayListdeJava.Vamosahacerunejemplosencilloconlabarajaespaola.

    123456789

    101112131415161718192021222324252627282930

    publicclassClase{publicstaticvoidmain(String[]args){//AtributosGestionReparacionestaller=newGestionReparaciones();Stringmatricula1="12345";Stringmodelo1="Leon";Stringmatricula2="54321";Stringmodelo2="Mondeo";Stringmatricula3="67890";Stringmodelo3="Laguna";//Aadodosvehiculosaltallertaller.anadeVehiculo(modelo1,matricula1);taller.anadeVehiculo(modelo2,matricula2);//Voyafijarunafechadereparacionaunvehiculoquenoexisteeneltaller,daraerrortaller.reparado(matricula3);//Estefuncionarabientaller.reparado(matricula1);//Estedarerror,noestareparado,porloquenopuedesalir,esunacondicionquehemospuestoeneliftaller.fechaSalidaTaller(matricula2);}}

    123456789

    101112131415161718192021222324

    importjava.util.*;publicclassBaraja{//constantesestticasprivatestaticString[]palo={"Bastos","Copas","Oros","Espadas"};privatestaticString[]carta={"As","Dos","Tres","Cuatro","Cinco","Seis","Siete","Sota"//labarajaesunalistadecartasprivateArrayListmazo;/***Constructordelabaraja*/publicBaraja(){mazo=newArrayList(40);for(Stringp:palo){for(Stringc:carta){mazo.add(c+"de"+p);}}}

    ?

    ?

  • 22/2/2015 CursodeJava:ResolucindelejerciciodeLinkedList

    http://www.redeszone.net/2012/03/19/cursodejavaresoluciondelejerciciodelinkedlist/ 6/8

    Twittear

    3 0 0

    ComopodisverlamecnicadeprogramacinessimilaraladelasLinkedList.

    Como el ejercicio anterior que os propusimos tienemucho juego, os vamos a proponer que en vez de utilizar lasLinkedListparasuprogramacin,loimplementisutilizandolosArrayList.YenlaprximaentregaloscorregiremosyhablaremosademsdelasPilasdedatosysusfuncionesycomosepuedenimplementar.

    Artculos Relacionados

    CursodeJava.EjemplosdeLinkedList

    CursoJava.GUIVolumenXIX:Resolucinalejerciciopropuesto

    CursoJava.VolumenXV:Resolucindelejerciciopropuesto

    CursodeJava.GUIvolumenIX:Resolucindelejerciciopropuesto

    Comprtelo.Gracias!

    2Comentarios

    2425262728293031323334353637

    /***Repartirnumcartas*/publicListrepartir(intnum){intnumCartas=mazo.size();ListvistaDeMano=mazo.subList(numCartasnum,numCartas);Listmano=newArrayList(vistaDeMano);vistaDeMano.clear();returnmano;}}

    1

    Megusta

    Las cookies permiten ofrecer los servicios deRedesZone. Al utilizar nuestros servicios, aceptasel uso que hacemos de las cookies.

    Cerrar

  • 22/2/2015 CursodeJava:ResolucindelejerciciodeLinkedList

    http://www.redeszone.net/2012/03/19/cursodejavaresoluciondelejerciciodelinkedlist/ 7/8

    AcercadeNosotrosContactoPublicidadAvisoLegal

    ComunicacinFacebookTwitterGoogle+GoogleCurrents

    GrupoADSLZoneADSLZoneADSLZoneTVAndroidAyudaGamerZona

    Dejarunarespuesta

    Nombre

    Correoelectrnico

    Enviarcomentario

    nosehaceresponsabledelasopinionesdelosinternautasPorfavorrevisalaortografayrespetalasnormasdelaweb.XHTML:Puedesutilizarlossiguientestags:

    DomingoA.dice:

    Hola,muybuentrabajo!!!Sencillo,directamentealgranoyconmuchosejemplos.Genial!!!Solamenteuncomentario:CreoquehaydoserroresenlaclaseFichaVehiculo(lneas35y40)alasignarlasfechasdesalidayreparacin.Enamboscasossehanasignadoalatributoprivadoentradacuandodeberanasignarsealosatributossalidayreparacionrespectivamente.

    Saludos.

    RESPONDER

    29noviembre,2012alas19:07

    CristianMontoyadice:dijoqueibaacrartreslistas,yosoloveouna,no?

    RESPONDER

    21agosto,2013alas16:23

  • 22/2/2015 CursodeJava:ResolucindelejerciciodeLinkedList

    http://www.redeszone.net/2012/03/19/cursodejavaresoluciondelejerciciodelinkedlist/ 8/8

    RSS HardZoneRedesZoneSoftZoneSmartZonaTabletZonaTestdeVelocidad

    RedesZone20102015