Lesson 6: Strings

circle-exclamation

Let's have fun with strings!

String Length

Recall that strings represent text values. All strings have a property called Length which returns the number of characters in the string. To get the length, attach .Length to a string value or variable.

// Calling Length directly from a string
Console.WriteLine("12345".Length);

// Calling Length from a string variable
var someString = "abcdef";
Console.WriteLine(someString.Length);

String Concatenation

Declare two string variables, one to hold a first name and one for a last name.

We can join two strings together to form a combined string using the + operator. This is called string concatenation.

The variable name contains a new string, the value JaneShepard.

But wait! That doesn't look right. It would look better if there was a space in between them.

To do this, we'll need to add a space in one of the variables. We can add it after firstName or before lastName. We could also just add a space string between the two variables.

Add a space string (" ") between the expression firstName + lastName. Remember to use another + to add this new string into the mix!

Now our name has a space between the first and last names.

String Interpolation

When we have a lot of strings to join together, it can get convoluted quickly. Instead of joining the strings using +, we could insert our strings into a template string. This is called string interpolation.

String interpolation can provide a more readable syntax.

The code above is almost the same as the one before it, except that the expression assigned to name is different.

  • The string value begins with a $.

  • The variables firstName and lastName are inside the string.

  • The variables firstName and lastName are wrapped in curly braces {}.

  • There is a space separating {firstName} and {lastName}.

The variable name has a template string assigned to it.

We made a template string by putting a $ before the string value. Then we inserted the variables we wanted by wrapping them in curly braces and placing them in their desired positions inside the string.

We want a space between the first name and last name, so there is a space already in the template string.

If we wanted the output to be Shepard, Jane instead, we can change the template string like this:

Replace name with this template string and run the code. The output should be Shepard, Jane.

Verbatim Strings

We can make a string span multiple lines. A verbatim string is a string that keeps the lines and spaces in a string as it is defined.

To make a verbatim string, place the @ character in front of a string value.

Type the program above in a code box and run it. The string will print in multiple lines, even if we only used one Console.WriteLine() statement.

circle-info

Question

Why would one use string interpolation over concatenation?

circle-info

Question

Find the error in this code and fix it. The output should be I came, I saw, I conquered.

circle-info

Challenge

Copy the code in the question above and change it to use string interpolation. Replace actions with a template string. The output should be I came, I saw, I conquered.

circle-info

Challenge

Make a Fill-In-The-Blanks story!

Come up with a story that has 3 or 4 sentences. Replace a word in each sentence with a variable. Declare those variables with initial values and print out the complete story.

Sample story:

Last updated