Вопрос Java какой код быстрее?

Начинающий
Статус
Оффлайн
Регистрация
6 Окт 2023
Сообщения
8
Реакции[?]
0
Поинты[?]
0
axis.getX() возвращает либо 1, либо 0
cos + axis.getX() * C;

или axis.getX() возвращает либо true, либо false
axis.getX() ? cos : 1;

Хотелось бы использовать 2 вариант, но если он менее производительный, тогда не буду

Вот 2 скрина это типо код из байт кода но я в этом не шарю
 

Вложения

Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
23 Мар 2022
Сообщения
20
Реакции[?]
4
Поинты[?]
4K
Первый вариант cos + axis.getX() * C; использует числовые значения (0 и 1), что обычно более эффективно, чем работа с булевыми значениями.

Второй вариант axis.getX() ? cos : 1; использует тернарный оператор, который в зависимости от условия возвращает одно из двух значений. Это может вызвать дополнительные вычисления и накладные расходы, так как JVM может оценивать оба выражения (cos и 1) независимо от условия.
 
Сверху Снизу