Рассчитать время выполнения для разных методов

1

У меня есть что-то вроде этого:

in main()
getinitialtime()
create object(constructor generates random values)

method1 does something with that object class members, let say addition of 2 numbers
gettime1()
method2 does something else with those members, let say substraction
gettime2()

Я хочу, чтобы вычислить время, которое method1 и method2 использовать sepparately. Но я не могу, потому что объявление другого объекта изменило бы членов класса, поскольку они генерируются случайным образом. Я знаю, что могу просто вычислить gettime2-getinitialtime-gettime1 и gettime1-getinitialtime, но разве нет другого пути?

Теги:
oop
time

1 ответ

1
Лучший ответ

Я вижу три возможных решения:

  1. Если вы произвольно генерируете внутренние свойства с помощью java.util.Random и используя одно и то же seed (но два разных Random объекта), то сгенерированные последовательности будут идентичны, и поэтому объекты.
  2. Вы можете предоставить некоторый метод для копирования значений из одного объекта в другой или просто переопределить clone() и создать клон первого объекта.
  3. Вы можете предоставить другой конструктор, который принимает значения извне, поэтому вы можете генерировать их по своему усмотрению и вводить их в два объекта.
  • 1
    № 2 - это то, что я искал, спасибо. 3 тоже подойдет.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню