Яка різниця між map і forEach у Scala?
Перша відмінність між map() і forEach() полягає в тому значення, що повертається. Метод forEach() повертає undefined, а map() повертає новий масив із перетвореними елементами. Навіть якщо вони виконують однакову роботу, повертається значення залишається іншим. 21 січня 2020 р
Отже, основна відмінність між map і forEach полягає в тому, що map повертає новий масив із результатами функції, застосованої до кожного елемента, тоді як forEach нічого не повертає. І map, і forEach можуть змінювати оригінальний масив, якщо функція зворотного виклику змінює його елементи.
Коли foreach виконує, це передає по одному елементу з колекції у вашу функцію, поки не досягне останнього елемента в колекції. Метод foreach застосовує вашу функцію до кожного елемента колекції, але не повертає значення.
Метод forEach() є ітераційним методом. Він викликає надану функцію callbackFn один раз для кожного елемента в масиві в порядку зростання індексу. На відміну від map(), forEach() завжди повертає undefined і не піддається ланцюжку. Типовим випадком використання є виконання побічних ефектів наприкінці ланцюжка.
Карта Scala — це набір пар ключ/значення. Будь-яке значення можна отримати на основі його ключа. Ключі на карті унікальні, але значення не обов’язково мають бути унікальними. HashMap реалізує незмінну карту та використовує хеш-таблицю для її реалізації.
загалом, Цикл (for) швидший, ніж цикл (foreach), якщо ви використовуєте їх для повторення масивів але при використанні списків foreach тут стає трохи швидшим, ніж зазвичай (для). (Збірник.