si tengo una variable de bytes: byte b = 0;
¿por qué byte + = 1 compilar pero byte = byte + 1 no?
¿por qué los siguientes trabajos:
b++;
b += 1; // compiles
... pero esto no lo hace?
b = b + 1; // compile error
¿El compilador de entender primero como byte
y la segunda como int
?
[EDIT]
Sé que la fundición, pero quiero llamar su atención sobre el b++, b += 1 and b = b + 1
creo que son iguales ¿por qué compilador de ellas se diferencia? ¿cuál es la diferencia entre
b += 1 and b = b + 1 ?
http://stackoverflow.com/questions/81392/java-why-do-i-receive-the-error-message-type-mismatch-cannot-convert-int-to-by tiene su respuesta – pyvi
nada a se ríen de :) el operador + prácticamente asegura la parte int – bestsss
para la parte de edición: 'byte b = 0; b + = 333; 'esto está bien. b + = 1 se compila como b = (byte) (b + 1) – bestsss