Duda JAVA

Hugo Alonso vvosca en gmail.com
Sab Sep 27 22:40:48 BST 2008


On Sat, Sep 27, 2008 at 11:15 PM, CanihoJR <canihojr en gmail.com> wrote:

> Estoy viendo ejemplos de codigo de Java y me encontré con esto O_o
>
> s1.getBytes()[2] == 118 && s1.charAt(0) == 'J' && s1.getBytes()[1] == 65 &&
> s1.charAt(3) == 'a';
>
> Cuanto se supone q vale S1??? :S:S:S:S
>
> THX!
>
>
Lista Ubuntu != Lista Java :P

No hay asignaciones, eso es una comparación (4 en realidad). s1 a saber lo
que valdrá.

Supongo que s1 será un objeto String, la comparación vendría a ser:

Si el valor decimal de la tercera posición (índice=2) del array de bytes que
representa el string es 118 (código decimal del caracter 'v') y,
el primer caracter es 'J' y,
el valor decimal de la segunda posición del array de bytes que representa el
string es 65 (caracter 'A') y,
el cuarto caracter es 'a'
devolverá true.

Curiosa manera de comprobar que la cadena es 'JAva' (con esas mayúsculas y
minúsculas) (codificada en ISO-8891).

Pero vamos, la comparación puesta así «dispara en vacío». Lo lógico sería
meterlo dentro de un if, o asignarle el valor resultante a un booleano:

boolean b = s1.getBytes()...;

En fin, supongo que será eso. Tampoco soy ningún experto «Javato».

Saludos...

-- 
Hugo Alonso.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: https://lists.ubuntu.com/archives/ubuntu-es/attachments/20080927/2ce79081/attachment-0001.htm 


Más información sobre la lista de distribución ubuntu-es