Alguem sabe me explicar porque essa expressão imprime 15?
int a = 017;
System.out.println(a);
Obrigado!
Alguem sabe me explicar porque essa expressão imprime 15?
int a = 017;
System.out.println(a);
Obrigado!
017 corresponde ao número 15 na base octal.
Se você utilizar o método a seguir o resultado vai ser 17.
System.out.println(Integer.toOctalString(a));
De acordo com a especificação
sinal + DecimalNumeral
sinal + 0x + HexDigits
sinal + 0X + HexDigits
sinal + # + HexDigits
sinal + 0 + OctalDigits
Entendi!
vlw!