Нет, это не правда. В C любое ненулевое значение будет интерпретироваться как true в логическом контексте, но такие операции, как ==
и &&
, возвращают 1 для true. В Python True
отличается от любого целого числа, но True == 1
возвращает True
; в более старых версиях использовалось 1
. Я думаю, что -1
является традиционным в семье Бейсиков; конечно, это имело место в QBasic и Visual Basic Visual Basic.
В Java true
не "обрабатывается как" -1
... логические значения и целые числа - это отдельные типы, которые нельзя сравнивать. Внутреннее представление зависит от реализации.