Tuplas
Parte da seção Fundamentos do Journey de Swift da Coddy. Lição 68 de 86.
Enquanto arrays armazenam múltiplos valores do mesmo tipo, às vezes você precisa agrupar alguns valores relacionados de tipos diferentes. É aqui que as tuplas se tornam úteis.
Uma tupla é uma coleção fixa de valores que podem ter tipos diferentes. Você cria uma colocando os valores dentro de parênteses, separados por vírgulas:
let person = ("Alice", 25, true)
print(person) // ("Alice", 25, true)Para acessar valores individuais, use o índice deles com um ponto:
let coordinates = (10.5, 20.3)
print(coordinates.0) // 10.5
print(coordinates.1) // 20.3Você também pode nomear os elementos para melhor legibilidade:
let product = (name: "Laptop", price: 999.99)
print(product.name) // Laptop
print(product.price) // 999.99Outro recurso útil é a decomposição de uma tupla em variáveis separadas:
let point = (3, 7)
let (x, y) = point
print(x) // 3
print(y) // 7Tuplas são perfeitas para retornar múltiplos valores de uma função ou agrupar pequenas quantidades de dados relacionados sem criar uma estrutura completa.
Desafio
FácilVocê receberá três linhas de entrada:
- Um nome (String)
- Uma idade (Int)
- Uma pontuação (Double)
Crie uma tupla chamada student com elementos nomeados: name, age e score.
Em seguida, decomponha a tupla em três variáveis separadas: studentName, studentAge e studentScore.
Imprima as três linhas seguintes:
- O nome do aluno acessado usando o elemento nomeado
- A idade do aluno acessada usando o índice (notação de ponto com número)
- A variável de pontuação decomposta
Exemplo: Se as entradas forem Emma, 21 e 95.5, sua saída deve ser:
Emma
21
95.5Experimente você mesmo
// Ler entrada
let name = readLine()!
let age = Int(readLine()!)!
let score = Double(readLine()!)!
// TODO: Escreva seu código abaixo
// 1. Crie uma tupla chamada 'student' com elementos nomeados: name, age, e score
// 2. Decomponha a tupla em três variáveis separadas: studentName, studentAge, e studentScore
// 3. Imprima o nome do aluno usando o elemento nomeado (student.name)
// 4. Imprima a idade do aluno usando a notação de índice (student.1)
// 5. Imprima a variável de pontuação decomposta (studentScore)Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores Parte 1
Operadores AritméticosOperador de MóduloAtribuição CompostaRecapitulação - Matemática SimplesOperadores de Comparação7IO Básico
Função PrintInterpolação de StringsEntrada ReadLineConversão de TiposRecapitulação - Até 120Recapitulação - Verdadeiro ou Falso10Funções
Declarar uma FunçãoParâmetros e ArgumentosValores de RetornoRótulos de ArgumentosRecapitulação - Função SigmaRecapitulação - Função de ValidaçãoValores Padrão13Iterando sobre Sequências
Iterando sobre ElementosO Método EnumeratedIterando sobre Strings P1Iterando sobre Strings P22Variáveis
Let vs VarAnotações de TipoNúmerosStringBooleanosConvenções de NomenclaturaRecapitulação - Inicializar Variáveis5Operadores Parte 2
Operadores Lógicos Parte 1Operadores Lógicos Parte 2Recapitulação - Lógica SimplesOperadores Lógicos Parte 3Operador Ternário8Calculadora de Divisão de Conta
Mensagem de Boas-vindasObtendo Entrada11FizzBuzz com um Diferencial
Visão Geral do JogoA Função FizzBuzz3Opcionais
O que são OpcionaisDesembrulhando com If LetGuard LetOperador de Coalescência NulaRecapitulação - Desembrulho Seguro6Tomada de Decisão
Estrutura IfIf - ElseRecapitulação - Calculadora SimplesEstrutura SwitchSwitch com Intervalos9Loops
Loop For-InLoop WhileLoop Repeat-WhileBreakContinueRecapitulação - FatorialIntervalos em LoopsLoop AninhadoRecapitulação - Entrada Dinâmica12Fundamentos de Arrays
Declarando um ArrayAcessando ElementosModificando ArraysMétodos de ArrayRecapitulação - Lista de ProdutosRecapitulação - Array InvertidoTuplas15Rastreador de Despesas Diárias
Visão Geral do ProjetoSair do ProgramaPratique por conta própria: Playground de Swift