En C, puedo escribir una sentencia ifEl uso de un bit a bit y el interior de una sentencia if
if (firstInt & 1)
pero cuando intento y hacer lo mismo en Java, el compilador me dice "tipos incompatibles" y dice que necesita un boolean
en lugar de un int
. ¿Hay alguna forma de escribir ese código C en Java?
La razón por la que esto funciona en C/C++ es que los lenguajes interpretan expresiones dentro de condicionales al comparar implícitamente sus resultados a cero. Java es muy estricto en este sentido, y requiere una expresión booleana en los condicionales. – dasblinkenlight
No es solo implícito; C ni siquiera tiene un tipo booleano. – Taymon
@Taymon C tiene el tipo booleano '_Bool' y la macro' bool' en 'stdbool.h' que se expande a' _Bool' – ouah