Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Lorenzo31

Páginas: 1 ... 9 10 11 12 13 [14] 15 16 17 18 19 20
261
mmmm bueno no no es lo mismo, en un for normal 

for(int element=0;element<array.length;element++) { System.out.println(array[element] ) } 

(aunque depende de lo que guarde las posiciones del array (primitivo o objeto))

Donde estarias imprimiendo los objetos del array para la posicion  "elemento"

en un for - each se hace sin necesidad de contador int element

for(Objeto objeto : array) { System.out.println(objeto); } 

pongo Objet porque dependerá de lo que se guarde dentro del array.

Espero se entienda, un for-each no necesita contador, pasa él mismo (o itera) por los elementos hasta el ultimo.

262
Pillo sitio, lo descargo y luego comento, aprendiendo de los demás  ;D

263
Buenos días, cogí hace 8 días la práctica del cine del hilo https://www.aprenderaprogramar.com/foros/index.php?topic=2400.0

Añadido: el enunciado puede descargarse desde https://www.dropbox.com/s/roinm5lxnok7r90/enunciado%20problema%20practica.pdf?dl=0 (Nota: no hace falta registrarse en dropbox para poder descargárselo)

Dije la subiría ayer pero acabé tarde y quería comprobar algunas cosas. Creo que todo lo que pide el ejercicio está. Incluido lo de ordenar peliculas y listar las entradas optativo.

Comento, cuando se introduce algo erróneo para añadir, en algunas opciones, lo que hace es no decir nada pero no lo añade, si se añade sale un añadido ok tal opción.

Y ahora mis supuestos, he imaginado que es una empresa que puede tener múltiples cines, el primer objeto que hace añadir es un cine, sin él no pude haber salas, ni películas en cartelera del cine, esto me pareció logico.

Una vez hay Cine, Sala y pelicula, se pueden añadir sesiones, una cosa que ya no he controlado, es que puede haber sesiones en la misma sala a la misma hora y día. (Para hacerlo bien tendria que impedir que se añadieran dos horas despues de una sesión)

El resto mostrar objetos, cines salas peliculas sesiones... eliminarlas. Compra de Entradas para una sesión (aquí estad atentos a lo que pide y que la fecha corresponda exacto hasta minutos sino no compra, ni eliminaría sesión)

Y mostrar recaudación, tanto para una peli concreta como para todas las del cine ordenadas alfabeticamente.

Creo que nada más, espero criticas que me ayudan muchisimo a mejorar, no os sepan mal pues es de donde se aprende, he ido documentando con // será un poco lío imagino aunque lo ordené mucho, para el proximo proyecto aprendo a documentar muchisimo mas conforme lo haga. Y quizá haya mas metodos de los que uso en algún lado, el motivo es que para plantear el ejercicio me tomé un día, y luego fui moldeándolo según lo que pedía... creo los que no uso son pocos no obstante.

Sin más, espero sirva para otras personas, el codigo o partes del mismo ;)
por cierto, hasta ahora no he mirado ningún otro ejercicio hecho, así que no sé si será muy malo pero es el que he sido capaz de hacer sin ponerme más días y alargarlo mucho.

AÑADIDO: completado el desarrollo de práctica del cine con interfaz gráfica por Lorenzo31. Puedes descargarla desde este enlace: https://www.aprenderaprogramar.com/foros/index.php?topic=2622.msg13425#msg13425 (hay que estar logeado en los foros para poder descargar)

264
Claro Ogramar, hay que respetar al maximo lo que pide el texto, en este caso he usado Date, pasandole un Calendar,  Date fecha = calendar.getTime(); que pasa los milisegundos como solidita Date, previamente pido la fecha guardandola en Calendar y listo. Cuando este terminado, mañana yo creo, lo subiré.

Es bastante lioso la verdad, esperaré con gusto las criticas, pues es de donde se aprende realmente. No estoy excesivamente contento pero bueno ya se verá. Gracias por el comentario como siempre me ayudas a aprender a prOGRAMAR ;)


265
Buenas, estoy metiendome con el lio mayusculo de esta practica del Cine, cuando la termine la subiré para recibir comentarios y apuntes, que la verdad ha sido muy liosa realizarla, teniendo en cuenta que llevo con ella 4 días etc...

 Pero queria preguntar, es obligatorio hacerla con la clase Date o puede ser Calendar, lo digo porque la clase Date esta más pasada que la heroina. Se puede pero complica un poco, es obligatorio realizarla con Date? solo eso, gracias.

P.D. Sino supongo que puedo usar un conversor con Calendar y pasarlo a Date con el metodo getTime()

P.D.2 Si se que esto es tan lio no lo empiezo ;)

266
Buenas, así que lo que observé no era cosa mia, jeje

Bueno no le di mayor importancia, porque creo que no es una copia, es un "iterador" en el sentido de la forma en la que se mueve, hasNext y next todo el rato, pero no por ello es una copia, de echo, si eliminas algun objeto que tenga vinculos con otros, salta error por corromperlos.  Creo que simplemente tiene que ver con el funcionamiento que te comento, pero alguien que sepa más puede indicarlo mejor es una sensación logica :)

267
Perdon no iba aquí mi  comentario, iba en el post que yo inicié que respondiste jeje lo traspaso :)

268
No había visto este post, cojo el texto del ejercicio para desarrollarlo y practicar :) con permiso.

269
Buenas rubens lo miro...

Vale el ejercicio está correcto, hace lo que se pide y entendiste el substring perfectamente.

Te hago dos apreciaciones a nivel lógico que yo veo, a simple vista.
 
Primera: palabra.substring(0+i,1+i)    sumar 0 entiendo que lo haces para diferenciar del +1 y verlo tu más claro pero a nivel lógico todo lo que suma 0 es igual al otro valor, es decir 0 + i = i   
     palabra.substring(i,1+i)

Segunda: esta ya es algo más personal, no importante, el propio int i = 0 ya es un contador inicializado a 0, una linea antes tu creas int contador = 0;

dentro del bucle lo vas aumentando una unidad, fijate que la variable i hace lo mismo exactamente. Supongo que pusiste el contador porque la i empezaba en 0 y tu querias que una variable se iniciara a 1 sin afectar al substring, solución que yo haría;

for (int i = 0; i < palabra.length(); i++){
         //  contador = contador+1;  <--- eliminar esta linea
            System.out.println("Letra " + (i+1)  + " = " +palabra.substring(i,i+1));
        }  /*añadir 1 a la i para ahorrarte un nuevo contador y no afectar al substring*/


La estructura y idea estupenda, y al final lo que te comento es un simple contador que no afecta demasiado, pero te doy la alternativa como idea.

Un saludo

270
Como te dijo Ogramar y Alex ahora no te preocupes, no debí comentarte lo del char es irrelevante. ;)

Para recojerlo con charAt(0) seria;
Scanner sc = new Scanner(System.in);
char letra;
letra =  sc.next().charAt(0); esto recoje el primer caracter del scanner, por ejemplo.

271
Será como tu dices, un error mio al observarlo.  ::)

272
Si Ogramar ya lo leí pero dudaba si solo era Nombre lo natural, buscando un poco orden natural, se refiere a ordenes lógicos, un Identificador de menor a mayor... nombres alfabeticamente.... etc.

Orden Total se refiere a ordenar por campos no tan comunes, sueldos, altura etc...

Y si en Comparable se ordena la forma natural con compareTo() y si quieres algun otro orden especial, creas un Comparator a proposito con compare().

Gracias, me queda todo más claro, una cosa que he visto, es que puedes aplicar los dos criterios uno detrás del otro, de forma que ordenes por dos campos, ejemplo de mas bajo a más alto, y ademas en igualdad, de identidad menor a mayor.

Gracias por tu tiempo, el tema me queda mucho mas claro, disculpa el tiempo empleado soy algo duro de moyera :) ;)

273
Vale mil gracias Ogramar, entonces lo adaptaré a lo que indicas. Muy amable, es más para indicar que es Iterable y lo vamos a iterar que otra cosa OK lo haré, ( de hecho se sobreescribe el metodo iterator() en este caso. Mil gracias por tu tiempo como siempre.

Adjunto el ejercicio con implements Iterable<Persona> y en la clase Persona implemento Comparable<Persona> y ordeno con Collections.sort (por si a alguien le es util alguna vez) teniendo en cuenta la ID menor primera, creo que es considerado un "orden natural" aunque no he sabido encontrar a que se refiere con natural si Strings solo y el resto son Comparator "orden total".

274
Buenas tardes a todos :) , quiero dejar mi ejercicio modificado para hacer una pregunta, porque en este caso se usa la interface Iterator pero no la Iterable, como en el ejercicio 912?? dejo link del 912.

https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=589:interface-iterable-y-metodo-iterator-api-java-recorrer-colecciones-ejercicio-y-ejemplo-resuelto-cu00912c&catid=58:curso-lenguaje-programacion-java-nivel-avanzado-i&Itemid=180

La razón puede ser que en ese ejemplo se usaba como campo de clase donde agregar Personas un  array[] y no ArrayList y por lo tanto ArrayList ya implementa Iterable ?

Perdonad la pregunta (tengo un poco de lio) pero intento asimilar los conceptos poniendolo en practica, aclarar que hice mi ejercicio antes de leer el ejercicio resuelto, aunque el remove() me costó, ahora lo entiendo.

Gracias de antemano como siempre por el tiempo y las molestias.

275
Buenas, veo bien tu código, todo correcto, comentarte solo (por decir algo) que en la salida usas String continuar, cuando simplemente te haria falta un char, S o N es un char.

276
Buenas, entendido el tema de hacerlas Iterable porque no lo son, solo las de la libreria Java. Ok y hasta ahora solo hemos invocado a Iterator sobre ArrayList o clases ya definias.

Sobre el for-each , en ese mismo ejercicio, puse un stop y cada vez que entraba en el bucle for each se iba (o eso me pareció a mi) al hasNext() que habia creado en la otra clase que implementaba Iterator. Al menos eso me pareció igual no es asi.

P.D. aun me baila un poco el tema. Hay que asimilarlo en practica ;)

277
BUenas tardes, empiezo por el final, respondiendo a tus preguntas.

Sí, siempre han de ser valores declarados en los enum.

La razón por la que te salta igualmente de linea es porque usas Sistem.out.println, done ln equivale a salto de linea.

Si quieres que no salte la linea usa Sistem.out.print


Sobre el ejercicio esta correcto, sobre el código para comprobar marca (que lo has resuelto bien), echale un vistazo a ValueOf para enum. Si no esta dentro de los valores descritos no lo acepta directamente.

Una cosa, no importante un matiz, en el método

Código: [Seleccionar]
public boolean comprobarMarca(){
        boolean done=true;
        marca=MarcaDeVehiculo.FORD;//se crea el objeto MarcaDeVehiculo
        EntradaDeTeclado entrada1=new EntradaDeTeclado();//se introduce una marca de coche
        for(MarcaDeVehiculo aux:marca.values()){
        ----->   if(entrada1.getEntrada().toString().equals(aux.toString().toLowerCase())){
                this.marca=aux; //La marca introducida se asigna a la variable marca.
                return done;
            }
        }
        return done=false;
    }

Fijate que si introduces en mayuscula el valor te dice que no es igual al enum, arreglar esto es fácil.

if(entrada1.getEntrada().toString().toUpperCase().equals(aux.toString()))

Así, introduzcan minúsculas o mayusculas, las haces mayusculas como los enum.



278
Buenas noches el_calderas, antes de corregirtelo, comentarte que el peso debe aplicarse con la formula del supuesto anterior, el de ejemplo.

Citar
La madera elegida por el usuario es ROBLE

con un color Castaño verdoso y con un peso específico de 800 kg/m3

 

Un palet admite 2.27 m3 de volumen. A continuación el peso de los palets de las distintas maderas:

Modificalo y así lo acabamos de comentar todo ;)

279
Buenas noches, quería consultar este tema, primero porque por su complejidad me gustó pero a la vez me dejo dudas.

https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=589:interface-iterable-y-metodo-iterator-api-java-recorrer-colecciones-ejercicio-y-ejemplo-resuelto-cu00912c&catid=58:curso-lenguaje-programacion-java-nivel-avanzado-i&Itemid=180

La primera es, que diferencia hay entre usar el import java.util.Iterator; y invocar el metodo iterator() como haciamos siempre en el curso "java desde cero" y implementar la Interface Iterable y Iterator.
La respuesta es que permite un trato mas "personalizado" de los metodos next() hasNext()... ? es lo que se me ocurre a botepronto.


Después he observado que en el for-each interviene tambien la Interface Iterator.

Hay algun ejercicio que pueda realizar para practicar este tema ? o documentación adicional clarificadora que alguien sepa que hay por la red?

Gracias de antemano como siempre. Es un tema que me ha dejado un poco el culo torcio, no por no entenderlo sino porque es complejo de replicar y saber cuando usarlo.

280
Buenas tardes, en principio veo todo correcto, documentoidentidad, mejor que hubieras puesto documentoIdentidad. CadaPalabraNuevaEnMayusculasParaLeerloMejor ;)

Y sobre tu pregunta, si claro los nombres de los campos son según uno considere, mientras sean claros para la lectura.

Páginas: 1 ... 9 10 11 12 13 [14] 15 16 17 18 19 20

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".