Menu
Coddy logo textTech

O que é um Vetor?

Parte da seção Logic & Flow do Journey de Rust da Coddy — lição 7 de 66.

Em Rust, você tem duas maneiras principais de armazenar coleções de dados: arrays e vetores. Enquanto arrays têm um tamanho fixo que deve ser conhecido em tempo de compilação, vetores são coleções dinâmicas que podem crescer e diminuir durante a execução do programa.

Um vetor, escrito como Vec<T>, é o tipo de array redimensionável do Rust. O T representa o tipo de elementos que o vetor conterá - por exemplo, Vec<i32> para inteiros ou Vec<String> para strings. Ao contrário dos arrays, onde você deve especificar o número exato de elementos antecipadamente, os vetores podem começar vazios e ter elementos adicionados ou removidos enquanto seu programa é executado.

Aqui está quando você escolheria um vetor em vez de um array:

// Array - tamanho fixo, conhecido em tempo de compilação
let scores = [85, 92, 78, 90]; // sempre exatamente 4 elementos

// Vetor - tamanho dinâmico, pode mudar durante a execução
let mut grades = Vec::new(); // começa vazio, pode crescer

Vetores são perfeitos quando você não sabe de quantos itens precisará antecipadamente, como ao armazenar a entrada do usuário, ler dados de arquivos ou construir listas que mudam com base na lógica do programa. Eles oferecem a flexibilidade que os arrays não podem oferecer, mantendo o acesso eficiente aos elementos.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Folha de consulta

Vetores (Vec<T>) são coleções dinâmicas que podem crescer e diminuir durante a execução do programa, ao contrário dos arrays, que possuem um tamanho fixo conhecido em tempo de compilação.

O T representa o tipo de elementos que o vetor conterá:

Vec<i32>    // vetor de inteiros
Vec<String> // vetor de strings

Criando um vetor:

let mut grades = Vec::new(); // começa vazio, pode crescer

Comparação com arrays:

// Array - tamanho fixo
let scores = [85, 92, 78, 90]; // sempre exatamente 4 elementos

// Vetor - tamanho dinâmico
let mut grades = Vec::new(); // pode mudar durante o tempo de execução

Use vetores quando você não souber antecipadamente quantos itens precisará, como ao armazenar a entrada do usuário, ler dados de arquivos ou construir listas que mudam com base na lógica do programa.

Experimente você mesmo

Esta lição não inclui um desafio de código.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Logic & Flow