Question

I have a user object with a few properties that I can access using dot notation.

For example, user.fullName outputs a String like Firstname Lastname.

How do I access these properties within a println statement that uses string interpolation?

I've tried the following:

println(s"user's full name is $user.fullName")

However, it doesn't seem to work with dot notation and only parses the entire $user object, interpreting the remaining fullName section as a string rather than a property. This incorrectly outputs:

>> user's full name is User(...).fullName

The following is what I'm after:

>> user's full name is Firstname Lastname

Help appreciated!

Was it helpful?

Solution

Solved - looks like curly braces help interpret the entire variable, including properties that are accessed through dot notation.

The following code works:

println(s"user's full name is ${user.fullName}")

This outputs the following as expected:

>> user's full name is Firstname Lastname

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top