Foro de elhacker.net

Programación => Java => Mensaje iniciado por: xemnas en 15 Diciembre 2012, 14:37 pm



Título: ayuda programa de java
Publicado por: xemnas en 15 Diciembre 2012, 14:37 pm
hola a todos, estoy aprendiendo "lo que puedo" a aprogramar, primero empecé con html, php y ahora me he pasado a java. Me bajé unos cuantos pdfs y algo he conseguido aprender un poco, pero hay un ejercicio que me está costando muchisimo y por más que miré en internet no consigo nada relevante.

el ejercicio seria algo así como, dime una fecha en el siguiente formato: 20 de junio de 1968 y lo que tiene que sacarnos es la fecha de esta forma, 20/06/1968. Se me ha ocurrido hacer un switch que asigne el nombre del mes a su número y luego sería sustituir hasta el delimitador "de" por una /, eso lo he pensado con un split.

pero por mucho que pruebe cosas, como ya dije no consigo nada.
gracias.


Título: Re: ayuda programa de java
Publicado por: Danyfirex en 15 Diciembre 2012, 16:19 pm
creo que podría ser algo así.

no se si funcione porque no se java, solo ley un poco y hice esto en el notepad :S


Código
  1. //seria algo Asi
  2.  
  3. String[] lista;
  4. String mes;
  5.  
  6. String cadena = "20 de junio de 1968";
  7. lista = cadena.split("de");
  8. mes= lista[1];
  9. switch ( mes ) {
  10.      case 'junio':
  11.           System.out.println(lista[0] + "/" + "6" +"/"+lista[2]);
  12.           break;
  13.      case 'enero':
  14.           System.out.println( lista[0] + "/" + "1" +"/"+lista[2]);
  15.           break;
  16.      case 'febrero':
  17.           System.out.println( lista[0] + "/" + "2" +"/"+lista[2]);
  18.           break;
  19.      case 'mayo':
  20.           System.out.println( lista[0] + "/" + "4" +"/"+lista[2] );
  21.           break;
  22.      default:
  23.           System.out.println("error" );
  24.           break;
  25.      }
  26.  

 espero y cojas la idea. y disculpa si puse el numero del mes mal es que no me acuerdo jajaja.

saludos


Título: Re: ayuda programa de java
Publicado por: xemnas en 15 Diciembre 2012, 16:28 pm
voy a probarlo y te comento, gracias por tu tiempo  ;D


Título: Re: ayuda programa de java
Publicado por: xemnas en 15 Diciembre 2012, 16:36 pm
Código
  1. public class ejer3pdf {
  2.  
  3.    public static void main(String[] args) {
  4.     String[] lista;
  5.     String mes;
  6.  
  7.     String cadena = "20 de enero de 1968";
  8.     lista = cadena.split("de");
  9.     mes= lista[1];
  10.     switch ( mes ) {
  11.         case "enero":
  12.              System.out.println(lista[0] + "/" + "01" +"/"+lista[2]);
  13.              break;
  14.         case "marzo":
  15.              System.out.println( lista[0] + "/" + "1" +"/"+lista[2]);
  16.              break;
  17.         case "febrero":
  18.              System.out.println( lista[0] + "/" + "2" +"/"+lista[2]);
  19.              break;
  20.         case "mayo":
  21.              System.out.println( lista[0] + "/" + "4" +"/"+lista[2] );
  22.              break;
  23.         default:
  24.              System.out.println("error" );
  25.              break;
  26.         }
  27.    }
  28.  
  29.  
  30.  


me devuelve error, alguna idea?


Título: Re: ayuda programa de java
Publicado por: Danyfirex en 15 Diciembre 2012, 16:55 pm
pues como te dije no se nada de java jaja,

lo mas probables es que tengas que hacer trim porque recuerda que al hacer split también se cuentan los espacios.

proba así.


Código
  1. public class ejer3pdf {
  2.  
  3.    public static void main(String[] args) {
  4.     String[] lista;
  5.     String mes;
  6.  
  7.     String cadena = "20 de enero de 1968";
  8.     lista = cadena.split("de");
  9.     mes= lista[1].trim();
  10. //si no proba asi switch ( mes.trim() ) {
  11.     switch ( mes ) {
  12.         case "enero":
  13.              System.out.println(lista[0] + "/" + "01" +"/"+lista[2]);
  14.              break;
  15.         case "marzo":
  16.              System.out.println( lista[0] + "/" + "1" +"/"+lista[2]);
  17.              break;
  18.         case "febrero":
  19.              System.out.println( lista[0] + "/" + "2" +"/"+lista[2]);
  20.              break;
  21.         case "mayo":
  22.              System.out.println( lista[0] + "/" + "4" +"/"+lista[2] );
  23.              break;
  24.         default:
  25.              System.out.println("error" );
  26.              break;
  27.         }
  28.    }
  29.  


Título: Re: ayuda programa de java
Publicado por: xemnas en 15 Diciembre 2012, 17:12 pm
funciona, muchas gracias  ;D


Título: Re: ayuda programa de java
Publicado por: Danyfirex en 15 Diciembre 2012, 17:43 pm
funciona, muchas gracias  ;D

de nada, gracias a vos por hacerme tocar un poco Java jaja  ;D veré si lo descargo. para aprender. saludos