Menú

Mostrar Mensajes

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

Mostrar Mensajes Menú

Mensajes - Usuario Invitado

#491
Java / Re: Random de 0 a 10 con dos decimales
24 Febrero 2015, 16:31 PM
@Baal. En realidad no es difícil de entender el código que puse anteriormente. Tampoco añadí algún Cast, en el primero sí hice un cast a Double. Sobre los casts, simplemente se fuerza a un tipo de dato convertirse en otro.

El código anterior se podría traspasar más limpio de la siguiente manera:

Código (java) [Seleccionar]
import java.util.Random;
import java.text.DecimalFormat;

public class DecimalNumberGenerator {

   private final static int NUMBER_MULTIPLICITY = 10;

   public static Double buildNumberWithTwoDecimals() {
       return generateNumber();
   }

   private static Double generateNumber() {
       DecimalFormat twoDecimalsFormatter = new DecimalFormat("#.00");
       Random randomNumberGenerator = new Random(System.nanoTime());
       double generatedNumber = randomNumberGenerator.nextDouble() * NUMBER_MULTIPLICITY;
       String formattedNumber = twoDecimalsFormatter.format(generatedNumber);
       // es necesario porque DecimalFormat usa el delimitador decimal ","
       formattedNumber = formattedNumber.replace("," , ".");
       return Double.parseDouble(formattedNumber);
   }

}


PD: Si solucionaste tu problema no olvides marcar el título con un check verde. Salu2.

Saludos!
#492
Java / Re: Implementar guardado de archivo
24 Febrero 2015, 03:13 AM
Si solucionaste tu problema no olvides marcarlo como solucionado editando el título y colocándole un check verde.

Salu2.
#493
Si no me equivoco, pack ajusta la ventana al tamaño de los componentes. Si se desea un layout responsivo, se necesitaría escuchar por eventos de resize y obtener las medidas para aplicarlas mediante ecuaciones a los componentes y layouts para que tengan un tamaño adecuado.

PD: Si solucionaste tu problema no olvides ponerle el check verde al título del tema para indicar que está resuelto.
#494
Foro Libre / Re: Mi problema con las Matemáticas
23 Febrero 2015, 20:16 PM
La concentración es un aspecto psicológico asi que ir al psicólogo no necesariamente es porque estás demente (de ésto ya se encargan los psiquiatras).

Si no cuentas con dinero para acudir al psicólogo puedes realizar ejercicios mentales como los que se realizan el programa Juegos mentales.

Aquí tienes algunos ejercicios mentales y consejos para mejorar la concentración.

Es curioso que digas que te gustan las mates y te aburres fácilmente. Generalmente cuando a alguien le gusta un tema se emociona y se queda "pegado" al tema. Quizás si tengas un problema de concentración que debas hacer ver.
#495
Siempre ha sido un problema redimendionar o reacomodar los componentes en AWT/Swing. Lo mejor que puedes lograr es con GridBagLayout.

Siempre recomiendo a los programadores Java SE empezar a familiarizarse con JavaFX. AWT/Swing ya han quedado obsoletos. Ahora con JavaFX puedes hacer aplicaciones ricas de internet (RIA por sus siglas en inglés).

Con JavaFX tienes muchas ventajas:

  • Componentes modernos (como datepicker).
  • Buen soporte para el patrón MVC.
  • Soporte para CSS y parcial para CSS3.
  • No se exige usar código para crear las interfaces gráficas ya que se puede usar XML adaptado llamado FXML. Incluso hay un GUI builder para realizar las interfaces con solo arrastrar componentes y generando código FXML.

    Quizás con la ayuda de CSS puedas hacer por lo menos un poco más flexible visualmente tu aplicación.
#496
Foro Libre / Re: Mi problema con las Matemáticas
23 Febrero 2015, 17:50 PM
¿Te pasa solo con las matemáticas?. Si te pasa en otras cosas también podría tratarse de un problema de falta de concentración que lo puedes solucionar con la ayuda de un psicólogo.

Yo no soy muy bueno en matemáticas, pero nunca se me ha complicado algún proceso que requiera matemática cuando programo. Dudo mucho que necesites un nivel elevado para el desarrollo común.

Otra cosa es que te dediques al desarrollo de aplicaciones científicas, o vídeo juegos donde es necesario aplicar mucha física, ahí si la tendrías bien jodida :xD.
#497
Java / Re: Implementar guardado de archivo
23 Febrero 2015, 16:05 PM
Código (java) [Seleccionar]
public void readAndWrite(String origin, String target) {
       try (BufferedReader br = new BufferedReader(new FileReader(origin));
               BufferedWriter bw = new BufferedWriter(new FileWriter(new File(target).getAbsolutePath()))
           ) {
           String line;
           while( (line = br.readLine()) != null) {
               // lees y escribes: br.readLine() | bw.writeLine()
           }
       } catch(ClassNotFoundException | IOException ex) {
           throw new RuntimeException("Something was wrong: "+ex.getMessage());
       }
   }





EDIT: La próxima vez que tengas alguna duda respecto a Java, arriba verás la sección Java para que publiques allí. Salu2.
#498
La programación es una ciencia y como ciencia, son necesarias las matemáticas. No hay un nivel definido, todo depende de los requerimientos y procesos que tenga que hacer la aplicación. No importa el lenguaje por lo que tu pregunta está mal planteada.

Por ejemplo, para un punto de venta, necesitas matemáticas para las ventas, los reportes, etc. y, creo que un nivel matemático normal como el de la mayoría de personas basta.

Si tu intención es desarrollar vídeojuegos, necesitarás un nivel matemático un poco más avanzado, necesitas aplicar mucha física para hacer que el juego se comporte como en un ambiente real, respetando leyes físicas.

En resumen, la matemática siempre son necesarias, el nivel de ella lo determina el proyecto.
#499
Java / Re: Ayuda inicio Java
23 Febrero 2015, 00:37 AM
Me alegro que empieces a estudiar. Ya verás que tu esfuerzo te dará resultado. Ánimo y cualquier cosa que no entiendas, puedes publicar aquí y se te apoyará.

Salu2.
#500
Java / Re: Random de 0 a 10 con dos decimales
22 Febrero 2015, 21:42 PM
Incluso de puede simplificar aun "más" :xD:

Código (java) [Seleccionar]
double randomNumber = (double) (new Random().nextInt(1001))/100;

Nota el cast que se hace. Cuando se hace una división entre dos números enteros, la división que lleva a cabo el compilador es una división teniendo en cuenta decimales, pero como ambos números son enteros, el compilador entiende que se desea una división entera y trunca el resultado eliminando los decimales, por lo que devuelve siempre un número entero.

Cuando realizas un cast double, le dices al compilador que no trunque ese resultado y devuelve la división original.





Para generar un número entre 0 y 10, solo se genera un número entre 0 y 1 y se multiplica por 10. A éste resultado lo formateamos con DecimalFormat para que redondee a dos decimales y lo convertimos a Double. El resultado, números entre 0 y 10 con 2 decimales.

Código (java) [Seleccionar]
double randomString = Double.parseDouble( new DecimalFormat("#.00").format((new Random().nextDouble() * 10)));

Salu2.