Je suis vraiment confus avec la façon dont nous créons un tableau dans Swift. Pourriez-vous me dire combien de façons de créer un tableau vide avec quelques détails?
Voici:
var yourArray = [String]()
Ce qui précède fonctionne également pour d'autres types et pas seulement pour les chaînes. C'est juste un exemple.
Ajout de valeurs
Je présume que vous voudrez éventuellement y ajouter une valeur!
yourArray.append("String Value")
Ou
let someString = "You can also pass a string variable, like this!"
yourArray.append(someString)
Ajouter en insérant
Une fois que vous avez quelques valeurs, vous pouvez insérer de nouvelles valeurs au lieu d’ajouter. Par exemple, si vous souhaitez insérer de nouveaux objets au début du tableau (au lieu de les ajouter à la fin):
yourArray.insert("Hey, I'm first!", atIndex: 0)
Ou vous pouvez utiliser des variables pour rendre votre insertion plus flexible:
let lineCutter = "I'm going to be first soon."
let positionToInsertAt = 0
yourArray.insert(lineCutter, atIndex: positionToInsertAt)
vous pouvez éventuellement vouloir supprimer certaines choses
var yourOtherArray = ["MonkeysRule", "RemoveMe", "SwiftRules"]
yourOtherArray.removeAtIndex(1)
Ce qui précède fonctionne très bien lorsque vous savez où se trouve la valeur du tableau (c'est-à-dire lorsque vous connaissez sa valeur d'index). Comme les valeurs d'index commencent à 0, la deuxième entrée sera à l'index 1.
Suppression de valeurs sans connaître l'index
Mais si vous ne le faites pas? Que se passe-t-il si yourOtherArray a des centaines de valeurs et que tout ce que vous savez, c'est que vous souhaitez supprimer celle correspondant à "RemoveMe"?
if let indexValue = yourOtherArray.indexOf("RemoveMe") {
yourOtherArray.removeAtIndex(indexValue)
}
Cela devrait vous aider à démarrer!
var myArr1 = [AnyObject]()
peut stocker n'importe quel objet
var myArr2 = [String]()
ne peut stocker que de la ficelle
Vous pourriez utiliser
var firstNames: [String] = []
Swift
Il y a trois (3) façons de créer un tableau vide dans Swift et syntaxe abrégée, la manière est toujours préférée.
Méthode 1: Syntaxe abrégée
var arr = [Int]()
Méthode 2: initialiseur de tableau
var arr = Array<Int>()
Méthode 3: tableau avec un littéral tableau
var arr:[Int] = []
Méthode 4: le crédit va à @BallpointBen
var arr:Array<Int> = []
Il existe 2 manières principales de créer/initialiser un tableau dans Swift.
var myArray = [Double]()
Cela créerait un tableau de doubles.
var myDoubles = [Double](count: 5, repeatedValue: 2.0)
Cela créerait un tableau de 5 doubles, tous initialisés avec la valeur 2.0.
Si vous voulez déclarer un tableau vide de type chaîne, vous pouvez le faire de 5 manières différentes: -
var myArray: Array<String> = Array()
var myArray = [String]()
var myArray: [String] = []
var myArray = Array<String>()
var myArray:Array<String> = []
Tableau de tout type: -
var myArray: Array<AnyObject> = Array()
var myArray = [AnyObject]()
var myArray: [AnyObject] = []
var myArray = Array<AnyObject>()
var myArray:Array<AnyObject> = []
Tableau de type entier: -
var myArray: Array<Int> = Array()
var myArray = [Int]()
var myArray: [Int] = []
var myArray = Array<Int>()
var myArray:Array<Int> = []
Voici quelques tâches courantes dans Swift 4, que vous pouvez utiliser comme référence jusqu'à ce que vous soyez habitué aux choses.
let emptyArray = [String]()
let emptyDouble: [Double] = []
let preLoadArray = Array(repeating: 0, count: 10) // initializes array with 10 default values of the number 0
let arrayMix = [1, "two", 3] as [Any]
var arrayNum = [1, 2, 3]
var array = ["1", "two", "3"]
array[1] = "2"
array.append("4")
array += ["5", "6"]
array.insert("0", at: 0)
array[0] = "Zero"
array.insert(contentsOf: ["-3", "-2", "-1"], at: 0)
array.remove(at: 0)
array.removeLast()
array = ["Replaces all indexes with this"]
array.removeAll()
for item in arrayMix {
print(item)
}
for (index, element) in array.enumerated() {
print(index)
print(element)
}
for (index, _) in arrayNum.enumerated().reversed() {
arrayNum.remove(at: index)
}
let words = "these words will be objects in an array".components(separatedBy: " ")
print(words[1])
var names = ["Jemima", "Peter", "David", "Kelly", "Isabella", "Adam"]
names.sort() // sorts names in alphabetical order
let nums = [1, 1234, 12, 123, 0, 999]
print(nums.sorted()) // sorts numbers from lowest to highest
Un tableau dans Swift est écrit sous la forme ** Array <Element> **, où Element correspond au type de valeurs que le tableau est autorisé à stocker.
Le tableau peut être initialisé en tant que:
let emptyArray = [String]()
Il montre que c'est un tableau de type string
Le type de la variable emptyArray est supposé être [String] à partir du type de l'initialiseur.
Pour créer le tableau de caractères avec des éléments
var groceryList: [String] = ["Eggs", "Milk"]
groceryList a été initialisé avec deux éléments
La variable groceryList est déclarée comme "un tableau de valeurs de chaîne", écrite sous la forme [String]. Ce tableau particulier a spécifié un type de valeur String, il est uniquement autorisé à stocker des valeurs String.
Il y a différentes qualités de tableau comme:
- Pour vérifier si le tableau a des éléments (si le tableau est vide ou non)
propriété isEmpty (Boolean) permettant de vérifier si la propriété count est égale à 0:
_if groceryList.isEmpty {
print("The groceryList list is empty.")
} else {
print("The groceryList is not empty.")
}
_
- Ajouter (ajouter) des éléments dans un tablea
Vous pouvez ajouter un nouvel élément à la fin d’un tableau en appelant la méthode append (_ :) du tableau:
_groceryList.append("Flour")
_
groceryList contient maintenant 3 éléments.
Vous pouvez également ajouter un tableau d'un ou plusieurs éléments compatibles avec l'opérateur d'affectation d'addition (+ =):
_groceryList += ["Baking Powder"]
_
groceryList contient maintenant 4 articles
_groceryList += ["Chocolate Spread", "Cheese", "Peanut Butter"]
_
groceryList contient maintenant 7 articles
vous pouvez supprimer le contenu du tableau en passant l'index du tableau ou vous pouvez supprimer tous
var array = [String]()
print(array)
array.append("MY NAME")
print(array)
array.removeFirst()
print(array)
array.append("MY NAME")
array.removeLast()
array.append("MY NAME1")
array.append("MY NAME2")
print(array)
array.removeAll()
print(array)
Swift 5
// Create an empty array
var emptyArray = [String]()
// Add values to array by appending (Adds values as the last element)
emptyArray.append("Apple")
emptyArray.append("Oppo")
// Add values to array by inserting (Adds to a specified position of the list)
emptyArray.insert("Samsung", at: 0)
// Remove elements from an array by index number
emptyArray.remove(at: 2)
// Remove elements by specifying the element
if let removeElement = emptyArray.firstIndex(of: "Samsung") {
emptyArray.remove(at: removeElement)
}
Une réponse similaire est donnée mais cela ne fonctionne pas pour la dernière version de Swift (Swift 5), voici donc la réponse mise à jour. J'espère que ça aide! :)
Compatible avec: Xcode 6.0.1+
Vous pouvez créer un tableau vide en spécifiant le type d'élément de votre tableau dans la déclaration.
Par exemple:
// Shortened forms are preferred
var emptyDoubles: [Double] = []
// The full type name is also allowed
var emptyFloats: Array<Float> = Array()
Exemple tiré de la page de développement Apple (Tableau):
J'espère que cela aide quiconque à trébucher sur cette page.
Selon Swift 5
// An array of 'Int' elements
let oddNumbers = [1, 3, 5, 7, 9, 11, 13, 15]
// An array of 'String' elements
let streets = ["Albemarle", "Brandywine", "Chesapeake"]
// Shortened forms are preferred
var emptyDoubles: [Double] = []
// The full type name is also allowed
var emptyFloats: Array<Float> = Array()