Предполагая, что вы используете список списков, использование итераторов вместо их получения и установки с помощью индексов цикла приведет к увеличению производительности.

ot;Core java 1" я прочитал

ВНИМАНИЕ: ArrayList гораздо менее эффективен, чем массив int [], потому что каждое значение оборачивается внутри объекта отдельно. Вы хотели бы использовать эту конструкцию только для небольших коллекций, когда удобство для программиста важнее, чем эффективность.

Но в моем программном обеспечении я уже использовал Arraylist вместо обычных массивов из-за некоторых требований, хотя «Программное обеспечение должно иметь высокую производительность, и после того, как я прочитал процитированный текст, я начал паниковать!» одну вещь, которую я могу изменить, - это изменить двойные переменные на Double, чтобы предотвратить автоматический бокс, и я не знаю, стоит ли это того или нет, в следующем примере алгоритма

public void multiply(final double val)
    {
        final int rows = getSize1();
        final int cols = getSize2();
        for (int i = 0; i < rows; i++)
        {
            for (int j = 0; j < cols; j++)
            {
                this.get(i).set(j, this.get(i).get(j) * val);
            }
        }
    }

Мой вопрос: меняет ли двойное на двойное? или это микрооптимизация, которая ни на что не повлияет? имейте в виду, что я мог бы использовать большие матрицы. 2-ой ли я должен пересмотреть всю программу снова?

Ответы на вопрос(0)

Ваш ответ на вопрос