Arrays
São coleções de dados de um mesmo tipo que podem armazenar tanto dados primitivos(como Int, String, Bool) como classes e objetos; São usados pra guardar mais de um valor em apenas uma variável e pode conter dois ou mais valores iguais.
Cada espaço num array é chamado de elemento, cada elemento é representado por um número que sempre começa em 0 e chamamos de índice.
O array abaixo guarda o nome dos membros da equipe X-Men da abertura do evolution, são 8 membros, então o array tem 8 elementos, com índices que vão do 0 ao 7.
let xMen = ["Ciclope", "Jean Grey", "Spyke", "Wolverine", "Tempestade", "Vampira", "Lince Negra", "Noturno"]
É possível criar um array vazio e preenche-lo depois:
var xMen = [String]()
Se você tentar acessar um índice que não existe vai crashar o código, por exemplo, se você tentar acessar o índice 8 no array xMen[8]
.
Sets
Também são coleções de dados, mas diferente do array, ele guarda os dados de forma desordenada e não guarda itens repetidos, cada elemento é único, por isso caso coloque o mesmo elemento duas ou mais vezes, ele vai ignorar e guardar o elemento apenas uma vez e por ser desordenado não é possível acessar os elementos com índices.
Usamos o set ao invés do array quando precisamos garantir que cada elemento aparecerá apenas uma vez no conjunto e a ordem dos elementos não é importante.
let viloes: Set = ["fenix negra", "apocalipse", "magneto"]
É possíver criar um set vazio e depois preenche-lo:
var viloes = Set<String>()
Tuplas
Assim como o array, as tuplas permitem armazenar vários conjuntos de dados numa mesma variável, mas não é possível adicionar ou remover itens de uma tupla, elas tem um tamanho fixo; Não é possível mudar o tipo dos itens numa tupla depois dela criada.
var nome = (primeiroNome: "Laura", sobrenome: "Kinney")
Você pode acessar um elemento de uma tupla usando o índice(que também começa em 0):
nome.0
ou um nome que você deu pro elemento:
nome.primeiroNome
Você pode mudar o valor de dentro da tupla depois dela criada, mas não o tipo, se tentasse mudar pra (primeiroNome: "Logan", idade: 57) retornaria um erro.
Dicionários
É parecido com um array, mas no dicionário você escolhe a chave identificadora ao invés de ele criar isso automaticamente em forma de índice, os elementos são guardados em forma de chave : valor
let paises = [
"Noturno": "Alemanha",
"Wolverine": "Canadá",
"Mancha Solar": "Brasil"
]
Caso um elemento não seja encontrado o dicionário retorna nil, é possível colocar um valor default pro dicionário quando ele não encontrar a chave entre os elementos:
paises["Vampira", default: "Desconhecido"]
É possível criar um dicionário vazio e depois preencher os elementos dele:
var paises = [String: String]()
paises["Vampira"] = "Estados Unidos"
Enums
É um jeito de definir um grupo de valores relacionados de um jeito que seja fácil de usa-los, por exemplo um enum poderia ser usado pra definir à qual grupo um mutante pertence:
enum Grupo {
case instituto
case irmandade
case morlocks
}
let tempestade = Grupo.instituto
Enums também podem guardar valores associados à cada case, por exemplo um enum de ações simples:
enum Acao {
case andando(destino: String)
case falando(assunto: String)
case voando(onde: String)
}
let falando = Acao.falando(assunto: "como derrotar o magneto")
Um bom lugar pra conseguir mais informações sobre como algo em Swift ou de um framework da Apple funciona com exemplos é a Developer Documentation, pra acessar a doc pelo Xcode:
Atalho de teclado - Command + Shift + 0
Menu superior do Xcode - Help >> Developer Documentation
Top comments (0)