Rust - Palindromos en Rust

<<>>
 
Vista:
Imágen de perfil de kevin

Palindromos en Rust

Publicado por kevin (1 intervención) el 01/10/2022 04:13:31
Hola :) Apenas estoy aprendiendo Rust por cuenta propia y quiero crear una función palindromo:

Esta función retorna un tipo bool, tiene como parametros un objeto String, en el cuerpo de la función creo otro objeto String, y lo itero con un for de tal forma que toma la primera letra del objeto que pasamos por parametro de la función hasta lterminar con la primera letra y al final lo evaluamos con una función .eq().

El problema es que al evaluar los dos objetos con .eq() siempre sale "false", siendo así que no importa lo que ponga (como una simple "a") por alguna razón siempre sae "false". ¿Cómo hago para que lo evalue correctamente y no me salga siempre un "false"?

Les dejo aquí el código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
fn is_palindrome(text: String) -> bool {
    let mut palindrome: String = String::new();
 
    for i in text.chars().rev() {
        palindrome.push(i);
    }
 
    return palindrome.eq(&text);
 
}
 
 
fn main() {
    let mut nombre: String = String::new();
    std::io::stdin().read_line(&mut nombre).unwrap();
    println!("{}", is_palindrome(nombre));
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder