Menu
Coddy logo textTech

Métodos de Array

Parte da seção Fundamentals do Journey de Rust da Coddy — lição 61 de 75.

Arrays são repletos de muitos métodos (funcionalidades). Para acessar um método, escreva:

array.methodName(otherParameters)

Aqui está uma lista dos métodos básicos:

  • len() - retorna o número de elementos no array
  • contains(value) - verifica se o array contém um valor específico
  • is_empty() - verifica se o array está vazio
  • reverse() - Inverte o array

Por exemplo:

let numbers = [10, 20, 30, 40, 50];
let length = numbers.len();
println!("Length: {}", length);

numbers.reverse()
// [50, 40, 30, 20, 10]

Exemplo do método is_empty():

let numbers: [i32; 0] = [];
let empty = numbers.is_empty();
println!("Is empty: {}", empty);

Isso resultará em:

Is empty: true

Ao usar contains, você precisa passar uma referência para o valor que está procurando usando &. Por exemplo:

let numbers = [10, 20, 30, 40, 50];
let has_thirty = numbers.contains(&30);
println!("Contains 30: {}", has_thirty);
// Saída: Contains 30: true
challenge icon

Desafio

Fácil

Crie uma função chamada analyze_array que recebe um array de strings de tamanho 5 como argumento. O método deve realizar as seguintes operações:

  1. Verifique se o array está vazio usando o método is_empty() e imprima o resultado.
  2. Verifique se o array contém a string “5” usando o método contains() e imprima o resultado. Lembre-se de usar String e não str: “5”.to_string()
  3. Inverta o array e imprima-o

A saída deve seguir exatamente este formato:

Is empty: [true or false]
Contains 5: [true or false]
Reversed Elements:
[element1]
[element2]
...

Folha de consulta

Arrays possuem métodos integrados acessados com a notação de ponto:

array.methodName(otherParameters)

Métodos básicos de array:

  • len() - retorna o número de elementos
  • contains(value) - verifica se o array contém um valor específico
  • is_empty() - verifica se o array está vazio
  • reverse() - inverte o array

Exemplos:

let numbers = [10, 20, 30, 40, 50];
let length = numbers.len();
let has_thirty = numbers.contains(&30);
let empty = numbers.is_empty();
numbers.reverse(); // [50, 40, 30, 20, 10]

Nota: contains() requer uma referência ao valor usando &.

Experimente você mesmo

use std::io;
use std::convert::TryInto;

fn analyze_array(arr: &mut [String; 5]) {
    // Escreva o código aqui




    // Imprime os elementos linha por linha
    for element in arr.iter() {
        println!("{}", element);
    }
}

fn main() {
    let mut input_str_arr = String::new();
    io::stdin().read_line(&mut input_str_arr).unwrap();
    let mut arr: [String; 5] = input_str_arr.split(',').map(String::from).collect::<Vec<String>>().try_into().unwrap();
    analyze_array(&mut arr);
}
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 Fundamentals