Rust - 문자열 뒤집기, 역순으로 변경

러스트에서 문자열(String, str)의 순서를 거꾸로 뒤집는 방법을 소개합니다.

1. 문자열(str, String)의 순서 뒤집기

chars()는 문자열의 문자들을 요소로하는 Iterator를 리턴하며, rev()는 Iterator의 순서를 역순으로 바꿉니다. collect()를 이용하여 Iterator의 요소들을 String으로 변환할 수 있습니다.

fn main() {
    let str: &str = "hello, world, rust";
    let reversed: String = str.chars().rev().collect();
    println!("{}", reversed);
}

Output:

tsur ,dlrow ,olleh

String 문자열의 순서 뒤집기

String 타입의 객체도 위와 동일한 코드를 사용하여 역순으로 변경할 수 있습니다.

fn main() {
    let str: String = String::from("hello, world, rust");
    let reversed: String = str.chars().rev().collect();
    println!("{}", reversed);
}

Output:

tsur ,dlrow ,olleh

2. fold()를 사용하는 방법

collect() 대신에 fold()를 사용하여 Iterator의 문자들을 하나의 문자열로 만들 수 있습니다.

  • 문자열의 순서는 rev()에서 역순으로 변경됨
fn main() {
    let str: String = String::from("hello, world, rust");
    let reversed: String = str.chars().rev().fold(String::new(), |mut acc, c| { acc.push(c); acc });
    let ss: &str = &reversed as &str;
    println!("{}", ss);
}

Output:

tsur ,dlrow ,olleh
Loading script...

Related Posts

codechachaCopyright ©2019 codechacha