Volver a la página principal
jueves 4 abril 2024
3

El tipo tupla en Rust

Una tupla es una forma general de agrupar una cantidad de valores con una variedad de tipos en un tipo compuesto. Las tuplas tienen una longitud fija: una vez declaradas, no pueden aumentar ni reducir su tamaño.

Creamos una tupla escribiendo una lista de valores separados por comas entre paréntesis. Cada posición en la tupla tiene un tipo y los tipos de los diferentes valores en la tupla no tienen por qué ser los mismos. Hemos agregado anotaciones de tipo opcionales en el archivo src/main.rs en este ejemplo:

fn main() {
    let tup: (i32, f64, u8) = (500, 6.4, 1);
}

La variable tup se une a la tupla completa porque una tupla se considera un elemento compuesto único. Para obtener los valores individuales de una tupla, podemos usar la coincidencia de patrones para desestructurar un valor de tupla, así:

fn main() {
    let tup = (500, 6.4, 1);

    let (x, y, z) = tup;

    println!("El valor de la variable y es: {y}");
}

Este programa primero crea una tupla y la vincula a la variable tup. Luego usa un patrón con let para tomarlo tup y convertirlo en tres variables separadas, x, y y z. Esto se llama desestructuración porque divide la tupla en tres partes. Finalmente, el programa imprime el valor de y, que es 6.4.

También podemos acceder a un elemento tupla directamente usando un punto ( .) seguido del índice del valor al que queremos acceder. Por ejemplo:

fn main() {
    let x: (i32, f64, u8) = (500, 6.4, 1);

    let five_hundred = x.0;

    let six_point_four = x.1;

    let one = x.2;
}

Este programa crea la tupla x y luego accede a cada elemento de la tupla utilizando sus respectivos índices. Como ocurre con la mayoría de los lenguajes de programación, el primer índice de una tupla es 0.

La tupla sin ningún valor tiene un nombre especial, unidad . Este valor y su tipo correspondiente están escritos () y representan un valor vacío o un tipo de retorno vacío. Las expresiones devuelven implícitamente el valor unitario si no devuelven ningún otro valor.

Etiquetas:
rust tuplas
Compartir:
Autor:
User photo

Jorge García

Fullstack developer