Menu
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS DSA TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI R GO KOTLIN SASS VUE GEN AI SCIPY CYBERSECURITY DATA SCIENCE INTRO TO PROGRAMMING BASH RUST

Rust Variables


Variables

Variables are containers for storing data values, like numbers and characters.

To create a variable in Rust, use the let keyword and specify the variable name (firstname in this example):

Example

let firstname = "John";
println!("My first name is: {}", firstname);
Try it Yourself »

What is {}?

Rust uses {} as a placeholder in println!() to show variable values.

In the example above, the output will be "My first name is: John".

You can use as many placeholders as you like:

Example

let name = "John";
let age = 30;
println!("{} is {} years old.", name, age);
Try it Yourself »

Using Placeholders in Order

When you use many placeholders, the values you pass are used in the same order.

In the example above:

  • The first {} gets replaced with name ("John")
  • The second {} gets replaced with age (30)

Important: The order matters. If you switch the values, the output will change:

Example

This example shows wrong order:

let name = "John";
let age = 30;
println!("{} is {} years old.", age, name);  // Outputs 30 is John years old
Try it Yourself »

Variable Values Cannot be Changed by Default

By default, variables in Rust cannot be changed after they are created:

let x = 5;
x = 10; // Error
println!("{}", x);
Try it Yourself »

Change Variable Values

If you want to change the value of a variable, you must use the mut keyword (which means mutable/changeable):

Example

let mut x = 5;
println!("Before: {}", x);
x = 10;
println!("After: {}", x);
Try it Yourself »

×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
sales@w3schools.com

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
help@w3schools.com

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2025 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.