diff options
| author | Hunter Kvalevog <hunter@kvog.sh> | 2026-10-02 21:53:51 -0500 |
|---|---|---|
| committer | Hunter Kvalevog <hunter@kvog.sh> | 2026-10-02 21:53:51 -0500 |
| commit | 4dfc11d74ab02ac5765ae5d08fb750c91f4744b4 (patch) | |
| tree | 17ba62056d6b691dd0217b0e8f1b3a5826dce0f6 /rustlings/exercises/09_strings | |
| parent | 02d8f1c62896576e1266553a56980eddbc2a88d7 (diff) | |
rustlings: move to rust/
Diffstat (limited to 'rustlings/exercises/09_strings')
| -rw-r--r-- | rustlings/exercises/09_strings/README.md | 9 | ||||
| -rw-r--r-- | rustlings/exercises/09_strings/strings1.rs | 8 | ||||
| -rw-r--r-- | rustlings/exercises/09_strings/strings2.rs | 13 | ||||
| -rw-r--r-- | rustlings/exercises/09_strings/strings3.rs | 46 | ||||
| -rw-r--r-- | rustlings/exercises/09_strings/strings4.rs | 37 |
5 files changed, 0 insertions, 113 deletions
diff --git a/rustlings/exercises/09_strings/README.md b/rustlings/exercises/09_strings/README.md deleted file mode 100644 index fa2104c..0000000 --- a/rustlings/exercises/09_strings/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# Strings - -Rust has two string types, a string slice (`&str`) and an owned string (`String`). -We're not going to dictate when you should use which one, but we'll show you how -to identify and create them, as well as use them. - -## Further information - -- [Strings](https://doc.rust-lang.org/book/ch08-02-strings.html) diff --git a/rustlings/exercises/09_strings/strings1.rs b/rustlings/exercises/09_strings/strings1.rs deleted file mode 100644 index 482e5de..0000000 --- a/rustlings/exercises/09_strings/strings1.rs +++ /dev/null @@ -1,8 +0,0 @@ -fn current_favorite_color() -> String { - String::from("blue") -} - -fn main() { - let answer = current_favorite_color(); - println!("My current favorite color is {answer}"); -} diff --git a/rustlings/exercises/09_strings/strings2.rs b/rustlings/exercises/09_strings/strings2.rs deleted file mode 100644 index b03094f..0000000 --- a/rustlings/exercises/09_strings/strings2.rs +++ /dev/null @@ -1,13 +0,0 @@ -fn is_a_color_word(attempt: &str) -> bool { - attempt == "green" || attempt == "blue" || attempt == "red" -} - -fn main() { - let word = String::from("green"); // Don't change this line. - - if is_a_color_word(&word) { - println!("That is a color word I know!"); - } else { - println!("That is not a color word I know."); - } -} diff --git a/rustlings/exercises/09_strings/strings3.rs b/rustlings/exercises/09_strings/strings3.rs deleted file mode 100644 index 3543ad5..0000000 --- a/rustlings/exercises/09_strings/strings3.rs +++ /dev/null @@ -1,46 +0,0 @@ -fn trim_me(input: &str) -> &str { - input.trim() -} - -fn compose_me(input: &str) -> String { - String::from(input) + " world!" -} - -fn replace_me(input: &str) -> String { - String::from(input).replace("cars", "balloons") -} - -fn main() { - // You can optionally experiment here. -} - -#[cfg(test)] -mod tests { - use super::*; - - #[test] - fn trim_a_string() { - assert_eq!(trim_me("Hello! "), "Hello!"); - assert_eq!(trim_me(" What's up!"), "What's up!"); - assert_eq!(trim_me(" Hola! "), "Hola!"); - assert_eq!(trim_me("Hi!"), "Hi!"); - } - - #[test] - fn compose_a_string() { - assert_eq!(compose_me("Hello"), "Hello world!"); - assert_eq!(compose_me("Goodbye"), "Goodbye world!"); - } - - #[test] - fn replace_a_string() { - assert_eq!( - replace_me("I think cars are cool"), - "I think balloons are cool", - ); - assert_eq!( - replace_me("I love to look at cars"), - "I love to look at balloons", - ); - } -} diff --git a/rustlings/exercises/09_strings/strings4.rs b/rustlings/exercises/09_strings/strings4.rs deleted file mode 100644 index 3f7c5e7..0000000 --- a/rustlings/exercises/09_strings/strings4.rs +++ /dev/null @@ -1,37 +0,0 @@ -// Calls of this function should be replaced with calls of `string_slice` or `string`. -fn placeholder() {} - -fn string_slice(arg: &str) { - println!("{arg}"); -} - -fn string(arg: String) { - println!("{arg}"); -} - -// TODO: Here are a bunch of values - some are `String`, some are `&str`. -// Your task is to replace `placeholder(…)` with either `string_slice(…)` -// or `string(…)` depending on what you think each value is. -fn main() { - string_slice("blue"); - - string("red".to_string()); - - string(String::from("hi")); - - string("rust is fun!".to_owned()); - - string("nice weather".into()); - - string(format!("Interpolation {}", "Station")); - - // WARNING: This is byte indexing, not character indexing. - // Character indexing can be done using `s.chars().nth(INDEX)`. - string_slice(&String::from("abc")[0..1]); - - string_slice(" hello there ".trim()); - - string("Happy Monday!".replace("Mon", "Tues")); - - string("mY sHiFt KeY iS sTiCkY".to_lowercase()); -} |