English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Neste tutorial, você aprenderá sobre arrays, como criar arrays, acessar valores em arrays e algumas operações comuns nos arrays.
No últimoTipos de Dados SwiftNo artigo, aprendemos como criar variáveis de alguns tipos de dados que podem armazenar um único valor/constantes.
Mas e se quisermos armazenar múltiplos valores do mesmo tipo de dados? No Swift, usamos chamado Array coisas.
O array é apenas um contêiner que pode armazenar múltiplos dados de um tipo de dados (valores) em uma lista ordenada, ou seja, você pode obter os elementos na mesma ordem em que foram definidos no array.
Os arrays podem armazenar qualquer tipo de dados, como Int, String, Class, etc.
Você pode criar um array vazio especificando o tipo dentro dos colchetes [ ].
Lembre-se de que você deve incluir o tipo dentro dos colchetes, caso contrário, o Swift o considerará um tipo de dados comum e você só pode armazenar um valor nele.
let emptyIntArr: [Int] = [] print(emptyIntArr)
Quando você executar o programa, a saída será:
[ ]
No programa acima, declaramos uma constante emptyIntArr que pode armazenar um array de inteiros e inicializar com o valor 0.
ou
Você também pode definir um array vazio da seguinte forma:
let emptyIntArr: Array<Int> = Array() print(emptyIntArr)
ou
Como o Swift é uma linguagem de inferência de tipo, você também pode criar um array sem especificar o tipo diretamente, mas deve usar alguns valores para inicializar, para que o compilador possa inferir seu tipo:
let someIntArr = [1, 2, 3, 4, 5, 6, 7, 8, 9] print(someIntArr)
Quando você executar o programa, a saída será:
[1, 2, 3, 4, 5, 6, 7, 8, 9]
No programa acima, declaramos uma constante someIntArr que pode armazenar um array de Integer sem especificar o tipo explicitamente. Além disso, usamosValor 1,2,3,4,5,6,7,8,9 Inicializou o array.
Você também pode repetir um valor uma quantidade específica de vezes para formar um array no Swift. Isso é feito usando o inicializador do array com repeating e count.
let arrWithRepeatingValues = Array(repeating: "Olá, Mundo", count: 4) print(arrWithRepeatingValues)
Quando você executar o programa, a saída será:
["Olá, Mundo", "Olá, Mundo", "Olá, Mundo", "Olá, Mundo"]
No programa acima, definimos uma constante arrWithRepeatingValues que armazena strings Olá, Mundo do array,e repetir o mesmo valor4vezes, como especificado no exemplo.
Atenção:Em Swift, você não pode criar arrays de tamanho fixo como em outros linguagens de programação. Um array de tamanho fixo significa que o array não pode conter mais elementos do que você definiu durante a inicialização.
Supondo que você tenha uma constante que pode armazenar um array de strings, conforme mostrado a seguir:
let intArr = [21, 34, 54, 12]
A representação gráfica de como os valores são armazenados no array é como follows:
Todos os arrays que você criar começam no índice 0. O primeiro elemento é armazenado no índice 0, o segundo elemento é armazenado no próximo índice(1),e assim por diante.
Você pode usar abaixoSintaxe de subscrito para acessar os elementos do array, ou seja, você precisa incluir o índice do valor que deseja acessar dentro dos colchetes após o nome do array.
Supondo que você tenha declarado um array intArr, conforme mencionado acima. Então, o primeiro elemento é intArr[0], o segundo elemento é intArr[1],e assim por diante.
let intArr = [21, 34, 54, 12] print(intArr[0]) print(intArr[1] print(intArr[2] print(intArr[3]
Quando você executar o programa, a saída será:
21 34 54 12
Você também pode usar for-in laço para acessar os elementos do array. Para mais informações, consultefor Swift-in laço.
Você pode usar a sintaxe de subscrito e o operador de atribuição para modificar o elemento do array, isso é, você precisa incluir o índice do valor que deseja atualizar após o nome do array, seguido do operador de atribuição e do novo valor.
var intArr = [21, 34, 54, 12] intArr[0] = 12 intArr[1] = 42 intArr[2] = 45 intArr[3] = 21 print(intArr)
Quando você executar o programa, a saída será:
[12, 42, 45, 21]
Você também pode modificar todos os elementos do array com novos valores, conforme mostrado a seguir:
var intArr = [21, 34, 54, 12] intArr = [1,2,3] print(intArr)
Quando você executar o programa, a saída será:
[1, 2, 3]
Mas, para adicionar novos elementos a um array existente, não pode usar a sintaxe de subscrito. Se fizer isso, eventualmente resultará em erro. Você não pode executar a seguinte operação:
var intArr = [21, 34, 54, 12] intArr[4] = 10
Quando você executar o programa, a saída será:
erro fatal: Índice fora do intervalo
O programa acima fornecido está errado ao atribuir novos elementos ao array intArr. Isso ocorre porque o intArr ainda não foi alocado para o índice4Aloca mais memória, mas não pode armazenar o valor especificado.
Para inserir corretamente novos elementos no array, usamos o método append() do array. A maneira de usar o append() será介绍的。
Este atributo determina se um array está vazio. Se um array não contiver nenhum valor, ele retorna true, caso contrário, retorna false.
let intArr = [21, 34, 54, 12] print(intArr.isEmpty)
Quando você executar o programa, a saída será:
false
Esta propriedade é usada para acessar o primeiro elemento do array.
let intArr = [21, 34, 54, 12] print(intArr.first)
Quando você executar o programa, a saída será:
Optional(21)
Da mesma forma, você pode usar a propriedade last para acessar o último elemento do array.
A função append é usada para inserir no final do array/Adicionar elementos.
var intArr = [21, 34, 54, 12] intArr.append(32) print(intArr)
Quando você executar o programa, a saída será:
[21, 34, 54, 12, 32]
Você também pode adicionar o conteúdo de um array para outro array, conforme mostrado a seguir:
var firstArr = [1,2,3,4] var secondArr = [5,6,7,8] firstArr.append(contentsOf: secondArr) print(firstArr)
Quando você executar o programa, a saída será:
[1, 2, 3, 4, 5, 6, 7, 8]
Esta função é usada para inserir no índice específico do array/Adicionar elementos.
var intArr = [21,34,54,12] intArr.insert(22, at: 1) print(intArr)
Quando você executar o programa, a saída será:
[21, 22, 34, 54, 12]
Da mesma forma, você também pode usar removeproperty para remover o elemento na posição especificada.
Esta função remove e retorna o valor especificado na posição especificada no array.
var strArr = ["ab","bc","cd","de"] let removedVal = strArr.remove(at: 1) print("removed value is \(removedVal)\ print(strArr)
Quando você executar o programa, a saída será:
removed value is bc ["ab", "cd", "de"]
Da mesma forma, você também pode usar removeFirst para remover o primeiro elemento do array, removeLast para remover o último elemento e removeAll para esvaziar o array.
Esta função retorna os elementos do array na ordem inversa.
var intArr = [21,22,23,24] let reversedArr = Array(intArr.reversed()) print(reversedArr)
Quando você executar o programa, a saída será:
[24, 23, 22, 21]
Esta propriedade retorna o número total de elementos no array.
let floatArr = [10.2,21.3,32.0,41.3] print(floatArr.count)
Quando você executar o programa, a saída será:
4
Ao usar a sintaxe de subscrito para acessar elementos de um array em Swift, é necessário garantir que o valor esteja no índice, caso contrário, ocorrerá um erro de tempo de execução. Vamos ver um exemplo:
let intArr = [21, 34, 54, 12] print(intArr[-1]
Quando você executar o programa, a saída será:
erro fatal: Índice fora do intervalo
No programa acima, o índice -1 emNão há valor. Portanto, quando você tentar acessar o valor no índice, ocorrerá um erro de tempo de execução.
Para evitar esse problema, primeiro encontre o índice do elemento que você deseja remover. Em seguida, remova o elemento no índice, conforme mostrado a seguir:
var intArr = [21, 34, 54, 12] if let index = intArr.index(of: 34) { print("encontrado índice") let val = intArr.remove(at: index) print(val) }
Quando você executar o programa, a saída será:
encontrado índice 34