Kotlin - Basic Syntax


Advertisements

Kotlin Program Entry Point

An entry point of a Kotlin application is the main() function. A function can be defined as a block of code designed to perform a particular task.

Let's start with a basic Kotlin program to print "Hello, World!" on the standard output:

fun main() {
   var string: String  = "Hello, World!"
   println("$string")
}

When you run the above Kotlin program, it will generate the following output:

Hello, World!

Entry Point with Parameters

Another form of main() function accepts a variable number of String arguments as follows:

fun main(args: Array<String>){
    println("Hello, world!")
}

When you run the above Kotlin program, it will generate the following output:

Hello, World!

If you have observed, its clear that both the programs generate same output, so it is very much optional to pass a parameter in main() function starting from Kotlin version 1.3.

print() vs println()

The print() is a function in Kotlin which prints its argument to the standard output, similar way the println() is another function which prints its argument on the standard output but it also adds a line break in the output.

Let's try the following program to understand the difference between these two important functions:

fun main(args: Array<String>){
    println("Hello,")
    println(" world!")

    print("Hello,")
    print(" world!")
}

When you run the above Kotlin program, it will generate the following output:

Hello, 
 world!
Hello, world!

Both the functions (print() and println()) can be used to print numbers as well as strings and at the same time to perform any mathematical calculations as below:

fun main(args: Array<String>){
    println( 200 )
    println( "200" )
    println( 2 + 2 )

    print(4*3)
}

When you run the above Kotlin program, it will generate the following output:

200
200
4
12

Semicolon (;) in Kotlin

Kotlin code statements do not require a semicolon (;) to end the statement like many other programming languages, such as Java, C++, C#, etc. do need it.

Though you can compile and run a Kotlin program with and without semicolon successfully as follows:

fun main() {
    println("I'm without semi-colon")
    
    println("I'm with semi-colon");
}

When you run the above Kotlin program, it will generate the following output:

I'm without semi-colon
I'm with semi-colon

So as a good programming practice, it is not recommended to add a semicolon in the end of a Kotlin statement.

Packages in Kotlin

Kotlin code is usually defined in packages though package specification is optional. If you don't specify a package in a source file, its content goes to the default package.

If we specify a package in Kotlin program then it is specified at the top of the file as follows:

package org.tutorialspoint.com

fun main() {
    println("Hello, World!")
}

When you run the above Kotlin program, it will generate the following output:

Hello, World!

Quiz Time (Interview & Exams Preparation)

Q 1 - Kotlin main() function should have a mandatory parameter to compile the code successfully:

A - True

B - False

Answer : B

Explanation

No it is not mandatory that Kotlin main() function should always have a parameter. If you need to pass multiple arguments through an array of string then you can use the paremeter like main(args: Array<String>), otherwise it is not required.

Q 2 - What will be the output of the following Kotlin program

fun main() {
    println("1"); println("2")
}

A - This will give a syntax error

B - It will print 12

C - 1 followed by 2 in the next line

D - None of the above

Answer : C

Explanation

Though Kotlin does not recommend using a semicolon in the end of the statement, still if you want to separate two statements in a single line then you can separate them using a semicolon otherwise you will get compile time error.

Answer : A

Explanation

Only A statement is correct here, because we can not run a Kotlin program without main() function, which is called an entry point for Kotlin program. It does not matter if you use print() or println() functions within a Kotlin program.

Useful Video Courses


Video

Kotlin Online Training

68 Lectures 4.5 hours

Arnab Chakraborty

Video

Kotlin Masterclass Programming: Android Coding Bible

Featured

71 Lectures 5.5 hours

Frahaan Hussain

Video

Android Dependency Injection using Dagger with Kotlin

18 Lectures 1.5 hours

Mahmoud Ramadan

Video

Android Retrofit complete course in Kotlin

49 Lectures 6 hours

Catalin Stefan

Video

Master Kotlin - Learn Kotlin to develop android apps

49 Lectures 2.5 hours

Skillbakerystudios

Video

Breeze Music Player - Learn Kotlin, MVVM and MediaPlayer API

22 Lectures 1 hours

CLEMENT OCHIENG

Advertisements