vlad55
10 уровень

Непонятки с int

Статья из группы Архив info.javarush
участников
Здравствуйте,есть код
int a = 010; System.out.println(a);
почему при выводе данного кода результат 8?
По какому принципу оно считается?
Комментарии (5)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
blacky
Уровень 23
6 июня 2016, 15:43
Вот официальная дока, там есть примеры "3.10.1. Integer Literals"
EvIv
Уровень 30
6 июня 2016, 11:47
такая запись — это восьмеричная система счисления.
10 в восьмеричной = 8 в десятичной.
Чтобы не было так, не нужно писать лидирующий ноль.
vlad55
Уровень 10
6 июня 2016, 11:56
спасибо
ferasinka
Уровень 32
6 июня 2016, 12:03
А если написать 0b10, то выведется 2 ;-)
EvIv
Уровень 30
6 июня 2016, 15:16
а если 0x перед числом, то это будет шестнадцатеричная система =)