[SRC] isPrime

Iniciado por Psyke1, 22 Noviembre 2011, 20:53 PM

0 Miembros y 3 Visitantes están viendo este tema.

Psyke1

@BlackZeroX
El link está roto. :-\

DoEvents! :-*

RyogiShiki

#11
@BlackZeroX
Cierto. Java hace la diferenciación entre Short-circuit evaluations y ORs inclusivos dependiendo el operador que se use.

Antes de decir lo siguiente Aclarar: En Java no es posible tratar valores booleanos como tipos numéricos de ninguna manera. Al igual que los datos numéricos no pueden ser tratados como resultados booleanos (if(1) o cosas opr el estilo).

Por otro lado por lo que dijiste antes me puse a investigar un poco y en Java (y diversos lenguajes) es poco probable que true llegue a ser -1 (tengo entendido que en vb6 es así) pero esto es más dependiente de la JVM y por ejemplo el tamaño de un booleano no está completamente definido, puede tomar valores entre 1bit y 32bits dependiendo de la implementación de la JVM1. lo que imposibilita mapear el valor de true a -1. Ahora en el caso de los Array de booleanos espacios con true son representados con 1 y los espacios con false representados con 02. Y los compiladores o interprétes de ByteCode deben seguir el ismo patrón.

Saludos


1 O'Reilly - Java In A Nutshell, Java Docs
2 Java Sun JVMs Spec Ver.2


BlackZeroX

#12
@RyogiShiki
No hiba a explicarte esto... pero creo que mejor lo hago...

El -1 es independiente de la arquitectura... si es una de 8 bits, 32 bits, 64 bits, etc, inclusive de como este la JVM como ya mensionaste... esto lo digo por que -1 (TODOS los bits Ensendidos en una arquitectura de 32 un int -1 = 4294967295 (int de 32bits)) es el UNICO que cuando aplicas una operacion Not es es unico que satisface como complemento a 0, por ello tambien digo que es el que se toma de manera NATIVA independientemente del lenguaje o arquitectura... en si true vale cualquier valor distinto de 0 independientemente del lenguaje; pero el unico que safisface a 0 como complemento es -1 (4294967295 en un int de 32 bits) y viceversa... ahora me entiendes mejor?.

Cita de: RyogiShiki en 23 Noviembre 2011, 22:27 PM
@BlackZeroX
Antes de decir lo siguiente Aclarar: En Java no es posible tratar valores booleanos como tipos numéricos de ninguna manera. Al igual que los datos numéricos no pueden ser tratados como resultados booleanos (if(1) o cosas opr el estilo).

En eso es cierto java no permite ningun valor numerico como tipo boolean... en teoria deberia... pero la realidad del lenguaje es otra... para mi es un punto debil a mi juicio... java tiene Pros y Contras... como todo lenguaje.

que extraño...



Dulce sLunas!¡l.
The Dark Shadow is my passion.