Los vectores en Rust son una colección dinámica que puede crecer y reducir su tamaño. Son similares a los arrays, pero con la ventaja de que su tamaño no es fijo. En esta sección, aprenderemos cómo crear, manipular y utilizar vectores en Rust.
- Creación de Vectores
1.1. Creación Vacía
Puedes crear un vector vacío y luego agregarle elementos.
fn main() { let mut vec: Vec<i32> = Vec::new(); vec.push(1); vec.push(2); vec.push(3); println!("{:?}", vec); }
1.2. Creación con Valores Iniciales
También puedes crear un vector con valores iniciales usando el macro vec!
.
- Acceso a Elementos
2.1. Acceso por Índice
Puedes acceder a los elementos de un vector usando índices, similar a los arrays.
fn main() { let vec = vec![1, 2, 3]; let first = vec[0]; println!("El primer elemento es: {}", first); }
2.2. Método get
El método get
devuelve una opción (Option
) que puede ser Some
si el índice es válido o None
si no lo es.
fn main() { let vec = vec![1, 2, 3]; match vec.get(2) { Some(third) => println!("El tercer elemento es: {}", third), None => println!("No hay tercer elemento."), } }
- Iteración sobre Vectores
3.1. Iteración Inmutable
Puedes iterar sobre los elementos de un vector sin modificarlo.
3.2. Iteración Mutable
También puedes iterar sobre los elementos de un vector y modificarlos.
- Métodos Comunes
4.1. push
Agrega un elemento al final del vector.
4.2. pop
Elimina y devuelve el último elemento del vector, si existe.
4.3. len
Devuelve el número de elementos en el vector.
4.4. is_empty
Verifica si el vector está vacío.
fn main() { let vec: Vec<i32> = Vec::new(); println!("¿El vector está vacío? {}", vec.is_empty()); }
- Ejercicios Prácticos
Ejercicio 1: Creación y Manipulación de Vectores
Crea un vector de números enteros, agrega algunos elementos, elimina el último y luego imprime el vector.
fn main() { let mut vec = Vec::new(); vec.push(10); vec.push(20); vec.push(30); vec.pop(); println!("{:?}", vec); }
Ejercicio 2: Iteración y Modificación
Crea un vector de números enteros, itera sobre él y multiplica cada elemento por 2.
fn main() { let mut vec = vec![1, 2, 3, 4, 5]; for i in &mut vec { *i *= 2; } println!("{:?}", vec); }
Ejercicio 3: Acceso Seguro
Crea un vector de números enteros y accede al tercer elemento de manera segura.
fn main() { let vec = vec![1, 2, 3, 4, 5]; match vec.get(2) { Some(third) => println!("El tercer elemento es: {}", third), None => println!("No hay tercer elemento."), } }
Conclusión
En esta sección, hemos aprendido cómo crear y manipular vectores en Rust. Los vectores son una herramienta poderosa para trabajar con colecciones dinámicas de datos. Hemos cubierto cómo crear vectores, acceder a sus elementos, iterar sobre ellos y utilizar algunos de sus métodos más comunes. Con esta base, estarás preparado para utilizar vectores en tus proyectos de Rust de manera efectiva. En la próxima sección, exploraremos las cadenas en Rust.
Curso de Programación en Rust
Módulo 1: Introducción a Rust
- ¿Qué es Rust?
- Configuración del Entorno de Rust
- Programa "Hola, Mundo!"
- Sintaxis y Estructura Básica