Scala String: Creating String, Concatenation, String Length

Free Scala course with real-time projects Start Now!!

In this chapter, we will discuss Scala String in Detail. After this, you will be able to create a string in Scala. Moreover, we will learn how to create a format string and concatenate strings in Scala.

So, let’s start the Scala String Tutorial.

Introduction to Strings in Scala

An immutable object, a string in Scala is a sequence of characters. Once we declare it, we cannot modify it. The following is a Scala string:
“Ayushi”

Creating a Scala String

To define a string, we can use a ‘var’ or a ‘val’. When we use ‘var’, we can reassign to it. This isn’t the same with ‘val’:

scala> var word="rest"
word: String = rest
scala> word="reset"
word: String = reset

By the way, reassigning ‘word’ to an Int will cause an error:

scala> word=7
<console>:12: error: type mismatch;
found   : Int(7)
required: String
      word=7
           ^

Now with ‘val’:

scala> val word="rest"
word: String = rest
scala> word="reset"
<console>:12: error: reassignment to val
      word="reset"

We can also mention the data type if we don’t want to rely on type inference.

scala> var word:String="rest"
word: String = rest
scala> word="reset"
word: String = reset

To make a lot of changes in your Scala string, you can use the StringBuilder class instead.

Find Length of a Scala String

An accessor method is one that’ll tell us about an object. One such method for strings is length(). It returns the number of characters a string holds. In the previous example,

scala> word.length()
res0: Int = 5

Here are more than a couple more examples:

scala> "Ayushi".length()
res1: Int = 6
scala> "".length()
res2: Int = 0
scala> " ".length()
res3: Int = 1

Concatenating Scala Strings

Concatenating two strings in Scala means joining the second to the end of the first. For this, we have the method concat() in the String class:

scala> "ab".concat("cde")
res5: String = abcde

Let’s try using more than one:

scala> "Ayushi".concat(" ".concat("Sharma"))
res6: String = Ayushi Sharma

We could also have done this using the + operator:

scala> "Ayushi"+" "+"Sharma"
res7: String = Ayushi Sharma

Creating Format Strings in Scala

For the times we want to format numbers/values into our string, we can make use of one of the methods printf() and format(). Other than this, the class String has the method format() to return a String object instead of a PrintStream object.

scala> var (a:Int,b:Int,c:Int)=(7,8,9)
a: Int = 7
b: Int = 8
c: Int = 9
scala> printf("a=%d, b=%d, c=%d",a,b,c)

a=7, b=8, c=9
For Integer data, we used %d. For Float and String data, we use %f and %s, respectively.

Conclusion

Hence, we studied how to create Scala String and creating format string in Scala. Along with this, we learned to concatenate and find a length of string. Still, have a confusion, feel free to ask in the comment session.

Reference

Did you like our efforts? If Yes, please give DataFlair 5 Stars on Google

follow dataflair on YouTube

Leave a Reply

Your email address will not be published. Required fields are marked *