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

#11
Has dado demasiado info de cómo funciona, pero no de la excepción objeto de este tema. Pega el rastreo de pila para analizarlo. Otra cosa, ¿la clase que hereda de BroadcastReceiver es interna? Si es así, necesitas hacerla estática. Una clase interna es asociada a una instancia de la clase externa.
#12
Desarrollo Web / Re: [Duda] Web Chat
27 Julio 2015, 00:39 AM
Lo mejor es ir con WebSockets. Yo hice uno en Java (y javascript obviamente), no es para nada complicado. En Python tienes Tornado, un framework para I/O non blocking. Para PHP tienes Ratchet, que trabaja similar a Java. Y Para Java, no necesitas librerías, ya viene integrado con el JDK y te ofrece una API sencilla y flexible.

Links de interés:

Ratchet (PHP)
Tornado (Python)
Ejemplo WebSockets con Java
#13
Java / Re: Re: Dudas sobre GC
26 Julio 2015, 17:22 PM
1. String 'b' es creado.
2. String 'c' es creado.
3. String 'd' referencia a 'b'.
4. String b referecia a 'a'.
5. String d referencia a 'a'.

¿En la línea 5 quién referencia al objeto b?

Nadie. Es por esto que en la línea 5 el objeto b es candidato a recolección. Una variable u objeto es candidato a recolección cuando ningún otra variable u objeto hace referencia a él. Por lo tanto, cuando d deja de apuntar a b, automáticamente b se vuelve candidato para recolección.
#14
Te voy respondiendo 2 veces y no me dices si te sirvió lo que te dije o no. Ya te dije lo que tienes que estudiar. Si quieres ser más específico, busca en google exámenes que hay algunos disponibles para descarga.

PD: Certifícate en Java 7+, Java 6 tarde o temprano morirá.
#15
Como te han dicho, todo en Java se pasa por valor. Intentaré explicarlo de una forma for dummies ;)

Supongamos que tienes un objeto de tipo Leon:

Código (java) [Seleccionar]
Leon leon = new Leon("Simba");

¿Qué pasa internamente? Bien, la nueva instancia de León se almacena en una dirección de memoria, supongamos que en la dirección 57. Ahora, le pasamos el objeto leon al método editLeon:

Código (java) [Seleccionar]
public void editLeon(Leon leon) {
    leon.setName("Oscar");
    leon = new Leon("Mustafa");
}



¿Qué está pasando internamente?

Lo que está pasando es que el método editLeon recibe un puntero apuntando a la dirección de memoria del objeto pasado. Entonces, por medio de este puntero podemos acceder al objeto y cambiar sus propiedades. En la siguiente línea, se crea una nueva instancia en la posición 125 por ejemplo, y el puntero cambia de dirección y ahora apunta a la dirección (125) de la nueva instancia. Java funciona igual que C en este aspecto.

Espero se haya entendido.
#16
Hola Carlosjava,

Te comento que JSE2, no existe, ni J2EE. Ahora es JSE/JEE; el '2' fue para Java SE 1.4 y 1.5.

Primero, utiliza herramientas actualizadas:

#17
¿Si vale la pena?

Lo vale y mucho. Java es tendencia desde hace mucho y siempre lo será. Es la tecnología N° 1 para desarrollo empresarial. Solo para que veas la tendencia de Java:


¿Qué tienes con Java?

  • Bean Validation
  • CDI
  • JMS
  • JSF
  • JTA
  • JPA
  • RMI
  • Webservices (SOAP/REST)
  • WebSockets
  • Soporte XML/JSON
  • API para Batch
  • Etc.

    Java es un superset de microtecnologías que te permiten realizar aplicaciones a nivel empresarial, de forma escalable, segura y eficiente.

    ¿Sueldo promedio de programador Java?

    En una encuesta realizada por JavaHispano nos dice lo siguiente:

    CitarEl sueldo promedio anual en España de un desarrollador Java es 25,910 euros. El 25% de los desarrolladores Java españoles ganan menos de 20,000 euros, y el 25% gana más de

    No es un sueldo exuberante, pero es decente. Puedes ver los detalles de la encuesta aquí.



    Saludos.
#18
Estaba trabajando, no pude contestar. Te pongo un pequeñito ejemplo que acabo de leer de la wiki de pokemón:

El ratio de captura se saca con ésta fórmula según esa wiki:


Donde:

  • PSmax = Puntos de salud totales del Pokemón.
  • PSactual = Puntos de salud actuales.
  • Rc = Ratio de captura del Pokemón.
  • Rb = Ratio de Poké Ball.
  • Be = Bono extra que se agrega cuando un Pokemón tiene un problema de estado: dommido: 2, congelado: 2, paralizado: 1.5, quemado: 1.5, envenenado 1.5, sin problemas: 1.

    Si a es mayor a 255, el pokemón es capturado. Caso contrario, encontramos b:


    Explicación:

    El juego generará 4 números entre 0 y 65535 (2^16 - 1) y se comparan con los valores de b. Nótese que b depende de a. Con un número menor o igual que b, la Poke Ball rebotará una vez, con dos rebotará dos veces, con tres rebotará tres veces y con el cuarto número lo capturará. Es decir, se necesita que los 4 números sean menores o iguales a 65535.

    Por ejemplo, si b = 350 y las combinaciones son:

  • 1er número = 200
  • 2do número = 300
  • 3er número = 500
  • 4to número = 120

    No se capturará al pokemón, solo rebotará tres veves ya que el tercer número aleatorio es mayor a 350.

    Recursos:

    Para saber el ratio de captura de un pokemón consulta: Lista de pokemones por ratio de captura
    Para saber el ratio de las Poke Balls: Poke Balls ratios

    Ejemplo:

    Demo JSFiddle

#19
Según fuentes oficiales la fórmula es así:

a =  ((([ (3 x HPmax - 2 x HPcurrent)] x (RATE x BONUSball)) + BONUSstatus - 1) / HPmax) / 2.56

Donde:

  • HPmax es la vida máxima del pokemón.
  • HPcurrent es la vida actual del pokemón.
  • RATE es el ratio del pokemón.
  • BONUSball ratio de la pokeball (puedes ver los ratios aquí http://www.pokexperto.net/index2.php?sección=color/balldexGBC)
  • BONUSstatus es el bonus por el estado del pokemon. Congelación o sueño vale 10 y quemaduras o veneno 5.

    Por ejemplo. Un pokemon tiene 160 de HPmax y 120 de HPcurrent y tiene un ratio de 2. La pokeball tiene un ratio de 1.5 y el estado del pokemon es de sueño, lo que equivale 10.

    Aplicando la fórmula:

    ((([3 x 160 - 2 x 120] x (2 x 1.5)) + 10 - 1) / 160) / 2.56

    Nos da como resultado:

    a = 1.4868 = 1.49

    Ahora hallamos b, por medio de la sifuiente fórmula:

    (2 ^16 - 1) SQRT4 (a / 2^8 - 1)

    Lo que nos da:

    b = 65535 x 0.32 = 20971.2

    Generamos 4 números aleatorios:

    (b / 2^16)^4 = 0.1

    Por lo tanto, la probabilidad es:

    p = 0.1 x 100 = 10%.

    Tuvimos 10% de probabilidades de capturar al pokemón.
#20
Hazlo con el replace que conoces:

Código (javascript) [Seleccionar]
str = str.replace(/-|_/g, '');

Estás diciendo que reemplazarás el caracter - o _ de forma global (/g).