web-dev-qa-db-fra.com

Déclaration de plusieurs variables de même type de données dans swift

dans objective-c, nous pouvons déclarer une variable comme - NSString *a,*b,*c;

in Swift there a way to declare same datatype multiple variable variable plutôt que de faire comme ci-dessous

var a: NSString = ""
var b: NSString = ""
var c: NSString = ""

Alors, est-il possible de déclarer toutes les variables a, b, c sur une seule ligne comme var (a,b,c): a:NSstring=("","","") ou quelque chose?

30
Mutech Dev01

Vous pouvez déclarer plusieurs constantes ou plusieurs variables sur une seule ligne, séparées par des virgules:

var a = "", b = "", c = ""

REMARQUE

Si une valeur stockée dans votre code ne change pas, déclarez-la toujours comme une constante avec le mot clé let. Utilisez des variables uniquement pour stocker des valeurs qui doivent pouvoir changer.

Annotations de type:

Vous pouvez définir plusieurs variables liées du même type sur une seule ligne, séparées par des virgules, avec une annotation de type unique après le nom de la variable finale:

var red, green, blue: Double

REMARQUE

Il est rare que vous ayez besoin d'écrire des annotations de type dans la pratique. Si vous fournissez une valeur initiale pour une constante ou une variable au point où elle est définie, Swift peut presque toujours déduire le type à utiliser pour cette constante ou variable, comme décrit dans Type Safety and Tapez Inférence.

Documentation ICI .

45
Dharmesh

Swift a une décision de conception étrange ici. Le placement d'un type sur une variable affecte toutes les variables précédentes non explicitement typées dans une définition multiligne. Idem pour les constantes.

Ces deux lignes sont équivalentes (a, b et c sont doubles):

var a, b, c: Double
var a: Double, b: Double, c: Double

Et ces deux sont équivalents (a et b sont Int, tandis que c et d sont Double):

var a, b: Int, c, d: Double
var a: Int, b: Int, c: Double, d: Double
5
user2609094

Fais-le comme ça

var a,b,c:NSString

Vous pouvez voir le type depuis PlayGround ou XCode

2
Leo