官术网_书友最值得收藏!

How it works...

A tuple is declared as a comma-separated list of the types it contains, within brackets, for example, (Int, String), as shown in the preceding code. The preceding function, normalisedStarRating, normalizes the rating and creates numberOfStars as the closest number of stars, and ratingString as a display string. These values are then combined into a tuple and returned by placing them, separated by a comma, within brackets as (numberOfStars, ratingString):

let ratingValueAndDisplayString = normalisedStarRating(forRating: 5, ofPossibleTotal: 10) 

Calling our function returns a tuple that we store in a constant called ratingValueAndDisplayString. We can access the tuple's components by accessing the zero-based numbered member of the tuple:

let ratingValue = ratingValueAndDisplayString.0 
print(ratingValue) // 3 - Use to show the right number of stars

let ratingString = ratingValueAndDisplayString.1
print(ratingString) // "3 Star Movie" - Use to put in the label

There is another way to retrieve the values out of a tuple, and it can be achieved as the value is assigned. By specifying a tuple of variable names, each value of the tuple will be assigned to the respective variable name. Consider the following example:

let (nextValue, nextString) = normalisedStarRating(forRating: 8, ofPossibleTotal: 10)
print(nextValue) // 4
print(nextString) // "4 Star Movie"
主站蜘蛛池模板: 曲松县| 垦利县| 会同县| 广南县| 西充县| 远安县| 周宁县| 临安市| 正宁县| 山丹县| 云浮市| 乌审旗| 鹤庆县| 彭泽县| 葵青区| 遵义县| 阜南县| 云龙县| 恩施市| 疏附县| 襄城县| 南江县| 新宾| 淮南市| 三原县| 东辽县| 新津县| 秦皇岛市| 遂平县| 咸阳市| 五峰| 荃湾区| 麻阳| 子长县| 保德县| 剑川县| 天柱县| 新兴县| 博白县| 江陵县| 大厂|