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

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

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

1 func repeat<ItemType>(item: ItemType, times: Int) -> ItemType[] {

andreysolov 05.06.14 в 09:15

0

2 var result = ItemType[]()

andreysolov 05.06.14 в 09:16

0

3 for i in 0..times {

andreysolov 05.06.14 в 09:16

0

4 result += item

andreysolov 05.06.14 в 09:16

0

5 }

andreysolov 05.06.14 в 09:16

0

6 return result

andreysolov 05.06.14 в 09:16

0

7 }

andreysolov 05.06.14 в 09:16

0

8 repeat("knock", 4)

andreysolov 05.06.14 в 09:16

0

2 enum OptionalValue<T> {

andreysolov 05.06.14 в 09:16

0

3 case None

andreysolov 05.06.14 в 09:16

0

4 case Some(T)

andreysolov 05.06.14 в 09:16

0

5 }

andreysolov 05.06.14 в 09:17

0

6 var possibleInteger: OptionalValue<Int> = .None

andreysolov 05.06.14 в 09:17

0

7 possibleInteger = .Some(100)

andreysolov 05.06.14 в 09:17

0

1 func anyCommonElements <T, U where T: Sequence, U: Sequence, T.GeneratorType.Element: Equatable,

andreysolov 05.06.14 в 09:17

0

T.GeneratorType.Element == U.GeneratorType.Element> (lhs: T, rhs: U) -> Bool {

andreysolov 05.06.14 в 09:17

0

2 for lhsItem in lhs {

andreysolov 05.06.14 в 09:17

0

3 for rhsItem in rhs {

andreysolov 05.06.14 в 09:17

0

4 if lhsItem == rhsItem {5 return true

andreysolov 05.06.14 в 09:17

0

6 }

andreysolov 05.06.14 в 09:17

0

7 }

andreysolov 05.06.14 в 09:17

0

8 }

andreysolov 05.06.14 в 09:17

0

9 return false

andreysolov 05.06.14 в 09:17

0

}

andreysolov 05.06.14 в 09:17

0

anyCommonElements([1, 2, 3], [3])

andreysolov 05.06.14 в 09:17

0
Минутку...