2016-11-08 4 views
0

が、私はいつものように私の配列を宣言した利点スウィフト3配列の宣言は、私はスウィフトを知ったとき

多くのチュートリアルでもアップルのアレイによって解放ブックでただし
var myArrayDeclaration: [String] 

はそう

var appleArrayDeclaration = [String]() 

上のように宣言されています私がそれらを使うとき、表面はまったく同じように見える。チュートリアルとAppleがほぼ独占的に2番目の方法を示す理由はありますか?それとも開発者の好みですか?

+5

最初のものは '[String]'を保持し、それに何も割り当てないプロパティを宣言するだけです。 2つ目は、実際には配列を作成してそれをプロパティに割り当てることです。 – dan

+1

'var myArrayDeclaration:[String] = []'は2番目のスニペットに相当します。どちらも 'Array ()'と同等です。 – titaniumdecoy

+0

どちらも同じではありません。最初は決して初期化されていない 'myArrayDeclaration'が宣言されています。次に、 'appleArrayDeclaration'を宣言して空の配列に初期化します。ユースケースによって異なります。 –

答えて

-3

第2の方法は、タイプ推論を使用しています。これは通常、AppleとDevelopersが優先します。迅速な3言語最適化のシンプルさと表現力を表現しているからです。

Btwでは、両方の方法が機能し、ジョブを実行します。

+3

"どちらの方法も仕事をして仕事をする"というのは間違っています。彼らは非常に異なる仕事をしています。 – luk2302

関連する問題