Open In App
Related Articles

Rust – Strings

Improve Article
Save Article
Like Article

String data type makes a very important part of any programming language. Rust handles strings a bit differently from other languages.  

The String data type in Rust is of two types:

  • String Literal (&str)
  • String Object (String)

String Literal:

String Literal or &str are called ‘string slices’, which always point to a legitimate UTF-8 sequence. It is used when we know the value of a string at compile time. They are a set of characters and static by default.

Example 1: Declaring string literals.


fn main() {
   let website:&str="";
   let language:&str = "RUST";
   println!("Website is {}",website);
   println!("Language is {}",language);


Website is
Language is RUST

String Object:

The String Object is provided by the Standard Library in Rust. It is not a part of the core language and String is heap-allocated, growable, and not null-terminated. They are commonly created by converting them from a string slice by using the to_string() method.

Example 2: Declaring String Object and converting String Literal to String Object


fn main() {
  // Declaring String Object using from() method  
  let str1 = String::from("Rust Articles");  
  // Converting String Literal to String Object
  let str2 = "GeeksforGeeks".to_string();


Rust Articles

Example 3: Creating an empty string and then set its value.


fn main() {
   let mut str1 = String::new();



Rust allows many methods to be used with Strings just as JAVA does. Also, it supports many methods such as indexing, concatenation, and slicing.

Last Updated : 01 Jun, 2021
Like Article
Save Article
Similar Reads
Related Tutorials