Criando um Vetor
Parte da seção Lógica & Fluxo do Journey de Rust da Coddy. Lição 8 de 66.
Agora que você entende o que são vetores, vamos aprender a criá-los. Rust oferece duas maneiras principais de criar um vetor, cada uma adequada a situações diferentes.
O primeiro método usa Vec::new() para criar um vetor vazio ao qual você pode adicionar elementos mais tarde:
let mut numbers = Vec::new();Observe que usamos mut porque provavelmente vamos querer adicionar elementos a esse vetor vazio mais tarde. O Rust nem sempre consegue determinar o tipo de um vetor vazio, então talvez você precise especificá-lo explicitamente:
let mut numbers: Vec<i32> = Vec::new();O segundo método usa a macro vec![] para criar um vetor com valores iniciais:
let numbers = vec![1, 2, 3, 4, 5];A macro vec![] é mais conveniente quando você conhece os valores iniciais. Rust pode determinar automaticamente o tipo com base nos valores que você fornece, então não é necessária nenhuma anotação de tipo. Esse vetor contém cinco números inteiros e está pronto para uso imediato.
A macro vec![] também oferece uma sintaxe de repetição para criar um vetor preenchido com o mesmo valor. Use vec![value; n] para criar um vetor com n elementos, cada um definido como value:
let zeros = vec![0; 5]; // [0, 0, 0, 0, 0]
let tens = vec![10; 3]; // [10, 10, 10]Isso é especialmente útil quando você quer criar um vetor de um tamanho específico determinado em tempo de execução, por exemplo, a partir da entrada do usuário:
let n = 4;
let data = vec![10; n]; // [10, 10, 10, 10]As duas abordagens criam o mesmo tipo de vetor — a escolha depende de você ter valores iniciais ou planejar montar o vetor gradualmente.
Desafio
FácilVocê receberá um número como entrada que representa quantos elementos um vetor deve conter. Leia a entrada, converta-a em um número inteiro e crie um vetor com essa quantidade de elementos, em que cada elemento seja o número 10.
Requisitos:
- Leia a entrada e converta-a em um número inteiro
- Crie um vetor usando a macro
vec![] - O vetor deve conter a quantidade especificada de elementos
- Cada elemento deve ter o valor
10 - Imprima cada elemento em uma linha separada
Entrada: Um único número inteiro que representa a quantidade de elementos
Saída: Imprima cada elemento do vetor em uma linha separada
Experimente você mesmo
use std::io;
fn main() {
// Leia a entrada
let mut input = String::new();
io::stdin().read_line(&mut input).expect("Failed to read line");
let n: usize = input.trim().parse().expect("Invalid input");
// TODO: Escreva seu código abaixo
// Crie um vetor com n elementos, cada um com o valor 10
// Imprima cada elemento em uma linha separada
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Lógica & Fluxo
1Fluxo de Controle Avançado
A Expressão 'match'Correspondência de Múltiplos ValoresCorrespondência de IntervalosA Expressão 'if let'Loops como ExpressõesRecapitulação - Parser de Comandos Simples4Agrupando Dados com Structs
O que é uma Struct?Visão Geral de StructsAcessando Campos de uma StructStructs MutáveisStructs como Parâmetros de FunçãoTuple StructsRecapitulação - Criando uma Struct Book2Introdução a Vetores
O que é um Vetor?Criando um VetorAdicionando Elementos com pushAcessando Elementos do VetorIterando sobre um VetorIteração MutávelRemovendo ElementosRecapitulação - Rastreador de Pontuação Básico5Pares Chave-Valor com Hash Maps
O que é um Hash Map?Criando um Hash MapInserindo Pares Chave-ValorAcessando ValoresIterando sobre um Hash MapAtualizando um ValorRemovendo um ParRecapitulação - Contador de Palavras8Projeto: Inventário Simples de Itens
Configuração do ProjetoAdicionando um ItemVerificando o EstoqueVendendo um ItemJuntando tudo3Lista de Tarefas via Linha de Comando
Configuração do ProjetoAdicionando uma TarefaVisualizando Todas as TarefasRemovendo uma TarefaCódigo FinalPratique por conta própria: Compilador de Rust online