String templates are a simple and effective way of embedding values, variables, or even expressions inside a string without the need for pattern replacement or string concatenation. Many languages now support this kind of feature, and Kotlin's designers also opted to include it (you might see the technique referred to in the Kotlin context as string interpolation).
String templates improve on the Java experience when using multiple variables in a single literal, as it keeps the string short and more readable.
Java developers will be familiar with the usage of string concatenation to mix expressions with string literals:
val name = "Sam" val concat = "hello " + name
Usage is extremely straightforward. A value or variable can be embedded simply by prefixing with a dollar ($) symbol:
val name = "Sam" val str ...