|
|
|
Как компилятор вычисляет тип математического выражения?
|
|||
|---|---|---|---|
|
#18+
Есть абстрактное математическое выражение: Код: java 1. Какой будет тип у выражения? Неужели всегда самый "широкий" из присутствующих членов вне зависимости от операций? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2014, 00:55 |
|
||
|
Как компилятор вычисляет тип математического выражения?
|
|||
|---|---|---|---|
|
#18+
А какой вариант вы предлагаете? А почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2014, 05:07 |
|
||
|
Как компилятор вычисляет тип математического выражения?
|
|||
|---|---|---|---|
|
#18+
questionerКакой будет тип у выражения? В JLS расписано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2014, 09:05 |
|
||
|
Как компилятор вычисляет тип математического выражения?
|
|||
|---|---|---|---|
|
#18+
questioner, для 2х значений, объединенных бинарным оператором 1. Если хотя бы один из операндов имеет тип double, то второй тоже преобразуется к double. 2. В противном случае, если хотя бы один из операндов имеет тип float, то второй тоже преобразуется к float. 3. В противном случае, если хотя бы один из операндов имеет тип long, то второй тоже преобразуется к long. 4. В противном случае оба операнда преобразуются к int ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2014, 09:49 |
|
||
|
Как компилятор вычисляет тип математического выражения?
|
|||
|---|---|---|---|
|
#18+
questioner , javac на момент исполнения расчётов byte, short, int кастит всё в int. Поэтому не особо парься с мелкими типами. Тоесть лишний раз даже нет смысла их декларировать если это не массивы. Long идёт отдельной категорией. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2014, 14:16 |
|
||
|
Как компилятор вычисляет тип математического выражения?
|
|||
|---|---|---|---|
|
#18+
я просто был удивлён, что после исполнения этой строчки Код: java 1. значение переменной d = 0; я думал, что если деление, то тип будет double ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2014, 15:22 |
|
||
|
Как компилятор вычисляет тип математического выражения?
|
|||
|---|---|---|---|
|
#18+
Будет целочисленное деление 1/2 которое даст 0. Потом кастинг в double. Лучше так писать: Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2014, 15:27 |
|
||
|
Как компилятор вычисляет тип математического выражения?
|
|||
|---|---|---|---|
|
#18+
questionerя думал, что если деление, то тип будет double Почему должен быть double, а не float? Тип деления int на int - int. Это по-моему логично. Научитесь читать JLS. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2014, 15:33 |
|
||
|
Как компилятор вычисляет тип математического выражения?
|
|||
|---|---|---|---|
|
#18+
Это тяжкое наследие старика Вирта. Чортов профессор запилил два деления. Вещественное "/" и целочисленное DIV и вобщем заставил высрать немало кирпичей при миграции с Pascal/Delphi на С++/Java где вывод типа совсем другой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2014, 15:38 |
|
||
|
Как компилятор вычисляет тип математического выражения?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, авторПочему должен быть double, а не float? это не столь важно. на float я бы тоже согласился, пожалуй. Если надо обрубить дробную часть - касть к int. авторНаучитесь читать JLS. я не смог по этому вопросу jls нагуглить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2014, 15:42 |
|
||
|
Как компилятор вычисляет тип математического выражения?
|
|||
|---|---|---|---|
|
#18+
maytonЭто тяжкое наследие старика Вирта. Он то тут при чем, если в процессоре это разные команды? Причем даже вещественное деление можно делать по разному. Почему это нужно прятать от программиста? Ну ладно в C++ - там операции можно назначить такого, что потом сам удивляться будешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2014, 16:13 |
|
||
|
Как компилятор вычисляет тип математического выражения?
|
|||
|---|---|---|---|
|
#18+
questionerя не смог по этому вопросу jls нагуглить. Не надо гуглить JLS. Там содержания достаточно. http://docs.oracle.com/javase/specs/jls/se8/html/index.html 4. Types, Values, and Variables 4.1. The Kinds of Types and Values 4.2. Primitive Types and Values 5. Conversions and Promotions - тоже близко к теме. Стоит обзорно прочесть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2014, 16:15 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=158&tid=2126531]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
41ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 249ms |
| total: | 347ms |

| 0 / 0 |
