2016-05-17 16 views
1

Swiftでは、どのような構文ですか?Swiftでは、どのような構文がありますか?(Hello、World):(hello、world)

let (hello, world):(String,String) = ("hello","world") 
print(hello) //prints "hello" 
print(world) //prints "world" 

それがの省略形です:

let hello = "hello" 
let world = "world" 

それは速記であれば、この速記は何と呼ばれますか?このタイプのスティタックスにスウィフトの文書がありますか?

+0

hm。 print(hello)// print "world" // print "world" –

+1

ドキュメントから:*タプルの内容を分解することができます。別の定数や変数を分離して、いつものようにアクセスしてください:* – vadian

答えて

2

@vadianで示されているように、タプルを作成してからすぐに別の定数にdecomposing its contentsを追加します。より良い

あなたが式を分割した場合、あなたは何が起こっているか見ることができる:ただし

// a tuple – note that you don't have to specify (String, String), just let Swift infer it 
let helloWorld = ("hello", "world") 

print(helloWorld.0) // "hello" 
print(helloWorld.1) // "world" 

// a tuple decomposition – hello is assigned helloWorld.0, world is assigned helloWorld.1 
let (hello, world) = helloWorld 

print(hello) // "hello" 
print(world) // "world" 

あなたはタプルを作成するとすぐに、タプルの内容を分解しているので、それは一種の持つことの目的に反しタプルで始める。私はいつも書くことだけを好むだろう:

let hello = "hello" 
let world = "world" 

が、あなたが書くことを好む場合:

絶対にあなた次第です
let (hello, world) = ("hello", "world") 

- それは個人の好みの問題です。