2015-05-01 5 views
-3
public class TypeConversion4 { 

    public static void main(String[] args) { 
     double d = 2D + 2d + 2. + 2l + 2L + 2f + 2F + 2.f + 2.D; 
     System.out.println(d); //prints 18.0 
    } 
} 

как оно печатает 18.0. Может кто-нибудь дать некоторый анализ.Преобразование типа в двойное значение в java

+5

9 x 2 = 18 ..... – Reimeus

+0

Где вы нашли умножение в инструкции? – kittu

+0

Сколько чисел вы добавляете? – Reimeus

ответ

1

Итак, в чем проблема? Все эти двойки преобразовываются в самый большой тип при подведении итогов, а затем результат удваивается. Но вы можете хранить 2 в длинном, int, double и float без каких-либо ошибок. Это означает, что все, что вам нужно сделать, - это суммировать эти 9 двойки и придумать 18,0.

+0

мой плохой, поскольку я запутался с типами, добавленными в утверждение – kittu

Смежные вопросы