Skip to content

Commit 61cbc32

Browse files
committed
Leave just an example
1 parent 60011d8 commit 61cbc32

File tree

1 file changed

+14
-19
lines changed

1 file changed

+14
-19
lines changed

_ru/tour/multiple-parameter-lists.md

Lines changed: 14 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,19 @@ previous-page: nested-functions
1515

1616
Методы могут объявляться с несколькими списками параметров. При этом когда такой метод вызывается с меньшим количеством списков параметров, это приводит к созданию новой функции, которая ожидает на вход не достающий список параметров. Формально это называется [частичное применение](https://en.wikipedia.org/wiki/Partial_application).
1717

18+
Например,
19+
20+
```tut
21+
val numbers = List(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
22+
val numberFunc = numbers.foldLeft(List[Int]()) _
23+
24+
val squares = numberFunc((xs, x) => xs :+ x*x)
25+
print(squares) // List(1, 4, 9, 16, 25, 36, 49, 64, 81, 100)
26+
27+
val cubes = numberFunc((xs, x) => xs :+ x*x*x)
28+
print(cubes) // List(1, 8, 27, 64, 125, 216, 343, 512, 729, 1000)
29+
```
30+
1831
Рассмотрим такие примеры из класса [Traversable](/overviews/collections/trait-traversable.html) коллекции Scala:
1932

2033
```
@@ -76,22 +89,4 @@ numbers.foldRight(0)(_+_) // Форма с каррированием
7689

7790
```
7891
def execute(arg: Int)(implicit ec: ExecutionContext) = ???
79-
```
80-
81-
#### Частичное применение
82-
Когда метод вызывается с меньшим количеством списков параметров, то результатом будет функция,
83-
которая принимает в качестве параметров недостающие списки. Это официально известно как
84-
[частичное применение](https://ru.wikipedia.org/wiki/%D0%A7%D0%B0%D1%81%D1%82%D0%B8%D1%87%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5).
85-
86-
Например,
87-
88-
```tut
89-
val numbers = List(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
90-
val numberFunc = numbers.foldLeft(List[Int]()) _
91-
92-
val squares = numberFunc((xs, x) => xs :+ x*x)
93-
print(squares) // List(1, 4, 9, 16, 25, 36, 49, 64, 81, 100)
94-
95-
val cubes = numberFunc((xs, x) => xs :+ x*x*x)
96-
print(cubes) // List(1, 8, 27, 64, 125, 216, 343, 512, 729, 1000)
97-
```
92+
```

0 commit comments

Comments
 (0)