1pub fn string_move() {
2 let s1 = String::from("Hello");
3 let s2 = s1;
4 println!("s2: {}", s2);
5}
6
7pub fn create_string() {
8 let s1 = String::new();
9 let s2 = "Hello World";
10 let s3 = s2.to_string();
11 let s4 = String::from("Hello World");
12 println!("{}, {}, {}, {}", s1, s2, s3, s4);
13}
14
15pub fn update_string() {
16 let mut s1 = String::from("hello");
17 s1.push_str(" World");
18 s1.push('a');
19 println!("s1 value is {}", s1);
20
21 let s2 = String::from("123");
22 let s3 = s1 + &s2 ;
23 println!("s3 value is {}", s3);
24}
25
26pub fn format_string() {
27 let s1 = String::from("tic");
28 let s2 = String::from("tib");
29 let s3 = String::from("tia");
30 let s4 = format!("{}-{}-{}", s1, s2, s3);
31 println!("s4 value is {}", s4);
32}
33
34pub fn traverse_string() {
35 let s1 = "abc";
36 for b in s1.bytes() {
37 println!("byte value is {}", b);
38 }
39
40 for ch in s1.chars() {
41 println!("char value is {}", ch);
42 }
43}
44
45pub fn split_string() {
46 let hello = "hello";
47 let s = &hello[0..4];
48 println!("s value is {}", s);
49}
50
51fn string_append() {
52 let mut s = String::from("Hello");
53 s.push_str(", World");
54 println!("{}", s);
55}
56
57fn string_deep_clone() {
58 let s1 = String::from("Hello2");
59 let s2 =s1.clone();
60 println!("s1: {}, s2: {}", s1, s2);
61}