apply конфигурирует объект и возвращает его (builder); also выполняет side-effect с it и возвращает исходный объект (логирование, validation).
Разбор
Intent().apply { putExtra(...) }.
compute().also { Log.d(TAG, it.toString()) }.
- Путаница this/it — частый вопрос.
- Не вкладывайте больше 1–2 уровней.
Итог
apply = configure; also = side-effect, оба возвращают receiver.