- 1
- 2
- 3
- 4
- 5
- 6
public int hashCode() {
HashCode h = new HashCode();
h.addValue(mFirst);
h.addValue(mSecond);
return h.hashCode();
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
public int hashCode() {
HashCode h = new HashCode();
h.addValue(mFirst);
h.addValue(mSecond);
return h.hashCode();
}
Наалоцируем даже там, где нужны только примитивы
https://github.com/Netflix/netflix-commons/blob/519178a/netflix-commons-util/src/main/java/com/netflix/util/Pair.java#L119-L124
Мистер Хэнки 29.06.2023 12:58 # −1
то увидел что класс универсальный и поддерживает не только примитивы.
Единообразие тем выгоднее, чем больше разработчиков контрибутят, а жидфликс немаленькая контора.
Ну и то, что в JVM инстанцирование объекта более дешевая операция чем в С++ тоже широкоизвестный факт.
Tike 29.06.2023 13:41 # +1
Хотспот правда теоретически может сделать это сам (см. скаляризация), но гарантий никаких.
guest6 29.06.2023 14:06 # 0
guest6 30.06.2023 04:27 # 0
сначала мы потупим охулион раз, а потом просрется джыд, и все исправит
Почему нельзя было сделать хотя бы как в го: см escape analysis?
Tike 30.06.2023 14:27 # 0
guest6 30.06.2023 14:29 # 0
guest6 30.06.2023 04:34 # 0
3a_O6e_Horu 30.06.2023 05:00 # 0
Tike 30.06.2023 14:27 # 0
guest6 30.06.2023 14:29 # 0
guest6 30.06.2023 04:30 # 0
а почему нельзя сделать отдельную реализацию для примитивов, как в шарпе, расте или плюсах?
ах да, я забыл, обобщенное программирование в джаве так не умеет
>> в JVM инстанцирование объекта более дешевая операция чем в С++
"инстанциирование объекта" в плюсах может быть совсем бесплатрной операцией, особенно если у тебя пустой констрктор. Время занимает выделение памяти некоторым видом аллокаторов, но в отличие от джавы создавать обхект можно и на стеке, выделяя память во время компиляции
Джава так не умеет
Зато джава умеет делать гц, и это совсем не бесплатная операция, особенно в интерактивных приложениях. Да, я всё знаю про небеса и поколения, но я видел дампы с GC pauses
3a_O6e_Horu 30.06.2023 04:46 # +2
guest6 30.06.2023 05:14 # +3
guest6 30.06.2023 17:19 # +1
guest6 30.06.2023 05:46 # +1
Только аргументированные ответы, пожалуйста!
JloJle4Ka 30.06.2023 11:07 # +3