![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| devmstr |
|
|||
![]() Developer ![]() ![]() Профиль Группа: Участник Сообщений: 879 Регистрация: 28.4.2004 Где: Ukraine Репутация: нет Всего: 11 |
Решил я тут попытатся повникать в тонкости Java.
Попался мне вопрос Верны ли следующие выражения для переменной d дробного типа? 1) (short)d==(short)(int)d 2) (int)d==(int)(long)d Проведя полевые испытания я обнаружил, что 1) верно, а второе нет Тест это подтвердил. Но я если честно не вкурил... -------------------- Think different ©Steve Jobs ![]() |
|||
|
||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 47 Всего: 159 |
||||
|
||||
| devmstr |
|
|||
![]() Developer ![]() ![]() Профиль Группа: Участник Сообщений: 879 Регистрация: 28.4.2004 Где: Ukraine Репутация: нет Всего: 11 |
За ссылку спасибо, справочник очень понравился.
Но к сожалению к пониманию ответа я не приблизился. Пока описывал, какой момент меня смущает и искал цитаты из еще одной статьи, до меня дошло
Тоесть в первом случае double в начале преобразуется в int, а потом в char, так что приведение в правой части ничего не меняет. Во втором же случае double в левой части бы привелся к int, но (long) ему в этом мешает и поэтому мы получаем long число, которое при приведении к int урезается. Фух. Разобрался! Это сообщение отредактировал(а) devmstr - 1.4.2007, 17:24 -------------------- Think different ©Steve Jobs ![]() |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |