Implementación del Método de Jacobi para resolver sistemas de ecuaciones lineales. Implementado en Java.Descrição completa
Descripción: Metodos de Ordenamiento en Java Netbeans *Ordenamiento de Intercambio *Ordenamiento por Insercion directa *Ordenamiento por seleccion directa *Ordenamiento por ShellSort *Ordemamiento por Qu...
Metodos de Ordenamiento en Java Netbeans *Ordenamiento de Intercambio *Ordenamiento por Insercion directa *Ordenamiento por seleccion directa *Ordenamiento por ShellSort *Ordemamiento…Descripción completa
Descripción: Implementación del Método de Jacobi para resolver sistemas de ecuaciones lineales. Implementado en Java.
Descripción completa
manejo de archivos java
Descripción completa
Descripción: Apuntes de entrada de datos en Java, fundamentos de programacion
EJEMPLO DE USO DE HASHMAP EN JAVA JAVA Publicado el Viernes 15 de febrero de 2013 en en Java Java por por Iván Salas
En esta ocasión voy a copartir un e!eplo en el "ue se ve coo utili#ar tablas $as$ en Java ediante la clase %as$&ap' Ia(ineos "ue necesitaos una aplicación para una tienda ediante la "ue "uereos alacenar los distintos productos "ue vendereos y el precio "ue tendrán' ) se "uiere "ue ten(a las funciones básicas* introducir un eleento* odi+car su precio* eliinar un producto y ostrar los productos "ue teneos con su precio' Vaos con la resolución del e!eplo de %as$&ap en Java' En prier lu(ar para $ace $a cerl rlo o se senc ncil illo lo $a $ace ceos os un una a ap apli lica caci ción ón pa para ra co cons nsol ola a y co con n un unos os po poco cos s Syste'out'println y la clase Scanner para leer desde teclado se crea un sencillo en, e n, co con n la las s po posi sibl bles es op opci cion ones es y co con n un ss-it itc$ c$ se ll lla aa a a la las s di dist stin inta tas s funciones para tratar el %as$&ap'
public static void ainStrin(4 ar(s67 %as$&ap8Strin(*9loat: listaProductos ; ne- %as$&ap8Strin(*9 loat:6< Scanner sc ; ne- ScannerSyste'in6< int opcionEle(ida ; 0< =oat precio< Strin( codi(o< -$ile opcionEle(ida >; 567 Syste'out'println?Introduce el nuero de la opción "ue "uieras@?6< Syste'out'println?1'A Introducir producto?6< Syste'out'println?2'A &odi+car precio?6< Syste'out'println?3'A &ostrar todos los productos?6< Syste'out'println?.'A Eliinar producto?6< Syste'out'println?5'A Salir?6< opcionEle(ida ; sc'neBtInt6< s-itc$ opcionEle(ida67 case 1@ Syste'out'println?Introduce el códido del producto@?6< codi(o ; sc'neBt6< Syste'out'println?Introduce el precio del producto@?6< precio ; sc'neBt9loat6< (uardarProductocodi(o* precio* listaProductos6< listaProductos6< breaC< case 2@ Syste'out'println?Introduce el códido del producto del "ue "uieres cabiar el precio@?6< codi(o ; sc'neBt6< odi+caPreciocodi(o* odi+caPreciocodi(o* listaProductos6< breaC< case 3@ ostrarProductoslistaProductos6< breaC< case .@ Syste'out'println?Introduce el códido del producto "ue "uieres eliinar@?6< codi(o ; sc'neBt6<
2 . 2 5 2 / 2 2 2 3 0 3 1 3 2 3 eliinaProductocodi(o* listaProductos6< 3 breaC< 3 case 5@ . breaC< DD Si la opcion es 5 no se $ace nada 3 default@ 5 Syste'out'println?ienes "ue introducir una opción valida?6< 3 F / 3 F F 3 3 . 0 . 1 . 2 . 3 . . . 5 . /
Gsaos Htodos estáticos para no tener "ue instanciar nin(,n ob!eto y a$orrarnos llaar a las funciones desde un ob!eto por"ue para lo sencillo "ue es el e!eplo no tiene sentido crear por e!eplo una clase tienda y ponerle esos Htodos o por lo enos es tan innecesario coo "ue las operaciones de la clase &at$ tapoco fuesen estáticas' Epe#aos con la función "ue (uarda un nuevo producto* es decir* "ue aade un nuevo eleento al %as$&ap' Priero coprobaos "ue no $alla nin(,n eleento con el códi(o introducido y si es as aadios el eleento con la función %as$&ap'putclave*contenido6'
1 public static void (uardarProductoStrin( codi(o* =oat precio* %as$&ap 8Strin(*9loat:
listaProductos67 2 if listaProductos'containsKeycodi(o667 3 Syste'out'println?Lo se puede introducir el producto' El códi(o esta repetido'?6< . F 5 else7 / listaProductos'putcodi(o* precio6< F F
Ma función para odi+car un eleento es prácticaente i(ual "ue la anterior pero* la función %as$&ap'putclave*contenido6 en esta ocasión se e!ecutara cuando se encuentre al(,n eleento con la clave pasada' Noo se puede ver la función putclave*valor6 aade un nuevo eleento si la clave no esta repetida y odi+ca el eleento con la clave pasada si ya $aba un eleento con esa clave'
1 public static void odi+caPrecioStrin( codi(o* %as$&ap8Strin(*9loat: listaProductos67 2 Scanner sc ; ne- ScannerSyste'in6< 3 if listaProductos'containsKeycodi(o667 . Syste'out'println?Introduce el precio del producto@?6< 5 listaProductos'putcodi(o* sc'neBt9loat66< / F else7 Syste'out'println?Lo $ay nin(un producto con ese códi(o'?6< F 1 F 0
Ma función encar(ada de ostrar los productos es la "ue tiene "ui#ás un poco ás de di+cultad a priori por"ue para recorrer una $as$&ap no $ay ndices coo en los arrays o OrrayMist y es necesario usar un iterador para recorrer el %as$ap' Vaos a ver las 2 foras de recorrer un %as$ap en Java* usando entrySet6 o usandoCeySet6' Non CeySet6 lo "ue se obtiene coo indica el nobre de la función son las claves y ediante un iterador se recorre la lista de claves' e esta fora si "uereos saber tabiHn el valor de cada eleento teneos "ue usar la función (etclave6'
1 public static void ostrarProductos%as$&ap8Strin(* 9loat: listaProductos67 2 Strin( clave< 3 Iterator8Strin(: productos ; listaProductos'CeySet6'iterator6< . Syste'out'println?%ay los si(uientes productos@?6< 5 -$ileproductos'$asLeBt667 / clave ; productos'neBt6< Syste'out'printlnclave Q ? A ? Q listaProductos'(etclave66< F F
Ma otra opción es entrySet6 con la "ue se obtienen los eleentos enteros y al i(ual "ue en el caso anterior con un iterador se recorre el $as$&ap* pero de
esta fora $ay "ue crear una variable de tipo &ap'Entry para alacenar el eleento y con los Htodos (etKey6 y (etValue6 de &ap'Entry se obtienen los valores' Lota@ Se puede usar un iterador del tipo "ue vaos a co!er en este caso &ap'Entry de la isa fora "ue se $i#o en el Htodo anterior* o sino usar un iterador (enHrico y lue(o $acer el castin( a &ap'Entry'
1 public static void ostrarProductos2%as$&ap8Strin(* 9loat: listaProductos67 2 Iterator iterador ; listaProductos'entrySet6'iterator6< 3 DDIterator8&ap'Entry8Strin(* 9loat:: iterador ; listaProductos'entrySet6'iterator6< . &ap'Entry producto< 5 -$ile iterador'$asLeBt66 7 / producto ; &ap'Entry6 iterador'neBt6< DDproducto ; iterador'neBt6< Si se usase tabien la otra linea coentada' Syste'out'printlnproducto'(etKey6 Q ? A ? Q producto'(etValue66< F 1 F 0
Non esta se(unda fora es necesario usar una variable &ap'Entry y reali#ar el iport pertinente* pero el resultado es el iso y el nuero de lneas de códi(o es i(ual* aun"ue esta se(unda fora supon(o "ue sea ás e+ciente puesto "ue ientras "ue en la priera solo obteneos la clave y lue(o $ay "ue buscar el contenido asociado con la función (etclave6 con esta se(unda fora ya teneos abos valores y no $ay "ue reali#ar esa b,s"ueda adicional* aun"ue "ui#ás la priera fora sea as Rsencilla' ) +nalente la función para eliinar un producto* en la "ue priero coprobaos "ue eBista un eleento con la clave pasada y si es as se eliina con la función reoveclave6'
1 public static void eliinaProductoStrin( codi(o* %as$&ap8Strin(*9loat: listaProductos67 2 if listaProductos'containsKeycodi(o667 3 listaProductos'reovecodi(o6< . F 5 else7 / Syste'out'println?Lo $ay nin(un producto con ese códi(o'?6< F F