The Swift Programming Language / Swift язык программирования - Книга на русском: Functions and Closures

← →
Английский оригинал Перевод на русский

Сожалеем, но текст оригинала доступен только зарегистрированным пользователям.

Используйте funt для объявления функций. Для того чтобы вызвать функцию используйте её имя вместо со списком

WRS 12.07.16 в 06:37

0

аргументов в скобках. Используйте -> для отделения аргументов и типов от

WRS 12.07.16 в 06:39

0

типа возвращаемой функции.

WRS 12.07.16 в 06:39

0

1 func greet(name: String, day: String) -> String {

keo82 05.06.14 в 08:45

0

2 return "Hello \(name), today is \(day)."

keo82 05.06.14 в 08:45

0
+1

3 }

keo82 05.06.14 в 08:45

0

4 greet("Bob", "Tuesday")

keo82 05.06.14 в 08:45

0

ЭСКСПЕРИМЕНТ

keo82 05.06.14 в 08:45

0

Используйте таплы для возвращения множество значений из функции.

WRS 12.07.16 в 06:47

0

1 func getGasPrices() -> (Double, Double, Double) {

keo82 05.06.14 в 08:45

0

2 return (3.59, 3.69, 3.79)

keo82 05.06.14 в 08:45

0

3 }

keo82 05.06.14 в 08:45

0

4 getGasPrices()

keo82 05.06.14 в 08:46

0

Функции также могут принимать неопределенное значение аргументов, образуя из них массив.

WRS 12.07.16 в 06:41

0

1 func sumOf(numbers: Int...) -> Int

keo82 05.06.14 в 08:46

0

2 var sum = 0

keo82 05.06.14 в 08:46

0

3 for number in numbers {

keo82 05.06.14 в 08:46

0

4 sum += number5 }

keo82 05.06.14 в 08:46

0

6 return sum

keo82 05.06.14 в 08:46

0

7 }

keo82 05.06.14 в 08:46

0

8 sumOf()

keo82 05.06.14 в 08:46

0

9 sumOf(42, 597, 12)

keo82 05.06.14 в 08:46

0

ЭКСПЕРИМЕНТ

keo82 05.06.14 в 08:46

0

Напишите функцию, которая вычисляет среднее из аргументов.

WRS 12.07.16 в 06:48

0

Функция может быть вложена. Вложенные функции имеют доступ к переменным, которые объявлены

WRS 12.07.16 в 06:49

0

во внешней функции. Вы можете использовать вложенные функции для удобства в

WRS 12.07.16 в 06:52

0

длинных или сложных функциях.

WRS 12.07.16 в 06:52

0

1 func returnFifteen() -> Int {

keo82 05.06.14 в 08:47

0

2 var y = 10

keo82 05.06.14 в 08:47

0

3 func add() {

keo82 05.06.14 в 08:47

0

4 y += 5

keo82 05.06.14 в 08:47

0

5 }

keo82 05.06.14 в 08:47

0

6 add()

keo82 05.06.14 в 08:47

0

7 return y

keo82 05.06.14 в 08:47

0

8 }

keo82 05.06.14 в 08:47

0

9 returnFifteen()

keo82 05.06.14 в 08:47

0

1 func makeIncrementer() -> (Int -> Int) {

keo82 05.06.14 в 08:47

0

2 func addOne(number: Int) -> Int {

keo82 05.06.14 в 08:48

0

3 return 1 + number

keo82 05.06.14 в 08:48

0

4 }

keo82 05.06.14 в 08:48

0

5 return addOne

keo82 05.06.14 в 08:48

0

6 }

keo82 05.06.14 в 08:48

0

7 var increment = makeIncrementer()8 increment(7)

keo82 05.06.14 в 08:48

0

1 func hasAnyMatches(list: Int[], condition: Int -> Bool) -> Bool {

keo82 05.06.14 в 08:48

0

2 for item in list {

keo82 05.06.14 в 08:48

0

3 if condition(item) {

keo82 05.06.14 в 08:48

0
Минутку...

Следующая страница →