Мое мнение таково, что вы не знаете и не должны догадываться. Попытка перехитрить компиляторов в наши дни бесплодна.
Было время, когда люди узнавали «Шаблоны», которые, казалось, оптимизировали некоторую операцию, но в следующей версии Java эти шаблоны были на самом деле медленнее.
Всегда пишите это как можно яснее, и вы можете не беспокоиться об оптимизации до тех пор, пока у вас на самом деле не появится какая-то пользовательская спецификация в вашей руке и не выполнит какое-либо требование, и даже тогда будьте очень осторожны, чтобы работать до и после тестов чтобы ваше «исправление» фактически улучшило его достаточно, чтобы пройти это требование.
Компилятор может сделать некоторые удивительные вещи, которые действительно ударят ваши носки, и даже если вы сделаете несколько тестов, которые повторяются в каком-то большом диапазоне, он может работать совершенно по-другому, если у вас есть меньший диапазон или изменить то, что происходит внутри петля.
Как раз вовремя компиляция означает, что он может иногда превосходить C, и в некоторых случаях он не может опередить статический язык ассемблера (сборка не может заранее определить, что вызов не требуется, Java может время от времени . делать только что
Подводя итог: самое значение, которое вы можете поместить в код, чтобы написать его, чтобы быть читаемыми
Сколько памяти это займет. 80GB? – JesperE 2008-11-05 20:52:03
Я на самом деле не думал, когда писал это ... но да. 80Gb – Dan 2008-11-05 21:06:48
Собственно, он не будет компилироваться, потому что 10000000000 не является int. – 2008-11-06 00:28:22