Если я сделаю
final x = (2 == 2.0);
Тогда x
будет true
.
Но если я сделаю
const x = (2 == 2.0);
Тогда x
будет false
.
Я ожидаю, что оба будут true
на основе docs :
Если один операнд является двойным, а другой - int, они равны, если double имеет целочисленное значение (конечное без дробной части) и identical(doubleValue.toInt(), intValue)
истинно.
Что здесь происходит?