С теоретической точки зрения да, это должно гарантировать, что вы получите точные результаты о том, насколько эффективен один по сравнению с другим.И если на это уходит гораздо меньше времени, результат довольно очевиден.
Однако в некоторых случаях возможно (хотя я не думаю, что это очень вероятно), что алгоритм, который вы считаете более медленным, больше подходит для JITingи будет быстрее, когда Java будет позволено оптимизировать его.
Обычный способ измерить производительность в Java - сначала дать ей «прогреться» - запустить алгоритм несколько раз (см. -XX: CompileThreshold) сначала получить его для компиляции, а затем время.