2017-01-16 2 views
-9

Здравствуйте, я задавался вопросом, что делают .0 и .1, или означает, что в какой-то точке константа y знают, что это оси x и y, но что делает. 0 и .1 делать?Что означают .0 и .1 Swift 3.0.1

let somePoint = (1, 1) 
switch somePoint { 
case (0, 0): 
    print("(0, 0) is at the origin") 
case (_, 0): 
    print("(\(somePoint.0), 0) is on the x-axis") 
case (0, _): 
    print("(0, \(somePoint.1)) is on the y-axis") 
case (-2...2, -2...2): 
    print("(\(somePoint.0), \(somePoint.1)) is inside the box") 
default: 
    print("(\(somePoint.0), \(somePoint.1)) is outside of the box") 
} 
// Prints "(1, 1) is inside the box" 
+7

я настоятельно рекомендую прочитать [кортежи раздел] (https://developer.apple.com/library/content/documentation/Swift/Conceptual/ Swift_Programming_Language/TheBasics.html # // apple_ref/doc/uid/TP40014097-CH5-ID329) руководства по языку. – Hamish

+0

Вы объявляете кортеж (Int, Int). Он не имеет ничего общего с x или y, как вызов let somePoint = CGPoint (x: 1.0, y: 1.0). Таким образом, .0 означает первый или нулевой элемент кортежа, а .1 означает второй элемент. –

+2

Из руководства по языку: * В качестве альтернативы, можно получить доступ к отдельным значениям элементов в кортеже, используя номера индексов, начинающиеся с нуля * – Keiwan

ответ

2

.0 в somePoint.0 получает доступ к первому элементу (с индексом 0) кортежа somePoint. .1 обращается ко второму элементу (по индексу 1).

Как уже отмечалось, это рассматривается в first section of the language guide, "The Basics".

+0

Большое спасибо Александру, все это делает теперь. Спасибо. –

+0

Вы должны прочитать руководство по эксплуатации. – Alexander

+0

Я читаю его, но в объяснении он не объясняется, по крайней мере, пока не включен Control Flow. –

Смежные вопросы