How can I do a line break (line continuation) in Kotlin

29.6k views Asked by At

I have a long line of code that I want to break up among multiple lines. What do I use and what is the syntax?

For example, adding a bunch of strings:

val text = "This " + "is " + "a " + "long " + "long " + "line"
2

There are 2 answers

4
bryant1410 On BEST ANSWER

There is no symbol for line continuation in Kotlin. As its grammar allows spaces between almost all symbols, you can just break the statement:

val text = "This " + "is " + "a " +
        "long " + "long " + "line"

However, if the first line of the statement is a valid statement, it won't work:

val text = "This " + "is " + "a "
        + "long " + "long " + "line" // syntax error

To avoid such issues when breaking long statements across multiple lines you can use parentheses:

val text = ("This " + "is " + "a "
        + "long " + "long " + "line") // no syntax error

For more information, see Kotlin Grammar.

0
Tonnie On

Another approach is to go for the 3 double quotes "" pairs i.e. press the double quotes 3 times to have something like this.

val text = """
    
    This is a long 
    long
    long
    line
""".trimIndent()

With this approach you don't have to use + , \n or escape anything; just please Enter to put the string in the next line.

trimIndent() to format multi-line strings - Detects a common minimal indent of all the input lines, removes it from every line and also removes the first and the last lines if they are blank (notice difference blank vs empty).