Интересно, работает ли собственный метод языка программирования лучше, чем любой другой набор написанных инструкций? Чтобы быть более точным, вот иллюстрация к моему вопросу ниже.

1)max = (a > b)?a:b; // written by me 
2) max(a, b);    // method in Java

Какая из вышеперечисленных операций более эффективна? Что, если мы получим это понятие в целом для всех других методов и кодов, которое дает тот же результат для определенной цели?

0
Nodirxon 11 Дек 2018 в 20:15

1 ответ

Лучший ответ

Это зависит.

  1. Реализация "стандартного" метода может иметь более (или менее) эффективную реализацию, чем ваша.
  2. «Стандартный» метод может выполняться много времени другими частями кода (самими классами JDK или библиотеками), что делает его горячим методом, который встроен и / или компилируется JIT, что делает его быстрее, чем ваш, называется менее часто
  3. Для некоторых конкретных методов некоторых классов JDK этот метод может фактически иметь реализацию в собственном коде непосредственно в JVM, что может сделать его быстрее, чем ваша реализация.

Но кроме этого, нет, нет никакой специальной обработки для методов JDK в целом. Это просто код Java, как и ваш.

1
JB Nizet 11 Дек 2018 в 17:21