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

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"
主站蜘蛛池模板: 石渠县| 新竹市| 商水县| 肇源县| 濉溪县| 泗阳县| 静乐县| 永吉县| 乌鲁木齐县| 舞阳县| 芮城县| 阿图什市| 芷江| 栾川县| 兴和县| 临清市| 深水埗区| 漠河县| 祁阳县| 满洲里市| 仁布县| 金华市| 沙雅县| 青冈县| 璧山县| 保德县| 南通市| 吉水县| 楚雄市| 宾阳县| 合水县| 阿鲁科尔沁旗| 华池县| 西宁市| 景宁| 江华| 会宁县| 富蕴县| 民丰县| 北碚区| 南澳县|