Skip to main content

Kotlin Programming Interview Questions and Answers

What Is Kotlin?
Kotlin is easy, open source, statically-typed, Procedural and object oriented programming (OOPs) language which runs on the Java Virtual Machine (JVM) and used for server-side development, Android apps, and much more.

Kotlin Programming was developed by JetBrains in 2011. Kotlin compiles to bytecode, so it can perform just as well as Java.

In 2017, Google announced Kotlin is an official language for Android development.
Kotlin works with all existing Java libraries and frameworks and runs with the same level of performance as Java.

Why To Use Kotlin?
1.      Kotlin is quite simple and safe compared to Java
2.      Kotlin is open-source
3.      Supports OOPs object oriented programming
4.      Kotlin compiles to bytecode
5.      Kotlin used for server-side development
6.      Kotlin used for Android apps development also
7.      Kotlin is multi-platform

What are the advantages of using Kotlin?
1.      Its performance is good.
2.      Kotlin is a functional language and based on JVM, so remove lots of boiler plate code.
3.      Kotlin is easy to learn because its syntax is similar to java.
4.      It’s expressive language so make code readable and understandable.
5.      It’s not replacement of java.
6.      It’s an official language of android development.

What are the disadvantages of Kotlin?
Kotlin does not have static modifier that create some problem for some conventional java developers.

Which type of Programming does Kotlin support?
Kotlin supports two types of programming -
1.      Object Oriented programming
2.      Procedural Programming

Why developers can prefer Kotlin over Java?
Kotlin is quite open-source, multi-platform supports, simple and safe as compared to Java.
It can also offer some useful features which are not supported by Java like - Null Safety, lambdas, and operator overloading.

What are the features available in Kotlin but not in Java?
Kotlin contains some addition features that Java doesn’t -
1.      Null Safety - Kotlin handles Null Pointer Exceptions
2.      Kotlin support lambdas, higher order functions, smart casting.
3.      Operator Overloading
4.      Extension Functions
5.      Companion Objects
6.      Range expressions
7.      Data classes
8.      And so on

What are the features of Java has that Kotlin does not?
1.      Primitive types like Int, Boolean and so on
2.      Non-private Fields
3.      Static members
4.      Checked exceptions
5.      Wildcard-types

What is Kotlin’s Null Safety?
Kotlin handles Null Pointer Exceptions and used to eliminate the risk of occurrence of NullPointerException in real-time.

The ways to handle Null Safety -
1.      Checks for a null in conditions
2.      Use Safe Call Operator (?.)
3.      Use Elvis Operator (?:)
Example -
fun main(args: Array){
  // variable is declared as non-null by default
  var str: String = "Hi, Anil!"

  // kotlin prevents you assign a null to a non-nullable variable
  // str=null //assing null to a causes complilation error
  println("str is : $str") 

  // variable is declared as nullable
  var str1: String? = "Hi, Anil!"    
  println("str1 is : $str1")
  str1 = null
  println("str1 is : $str1")
}

What are the modifiers that are available in Kotlin?
Kotlin’s modifiers -
1.      public
2.      private
3.      protected
4.      interval

What is the extension of Kotlin file?
The Kotlin file extension is - .kt

How to declare variable in Kotlin?
val abc: Char
//OR
@Volatile var xyz: Long? = null


Is there Ternary Conditional Operator in Kotlin like in Java?
No! Not available.

What is the difference between var and val?
The value (val) is like a constant whose value cannot be change once assigned while variable (var) value we can change.

What is the entry point to a Kotlin program?
The main() function is the entry point to a Kotlin program.
The Example looks like -
//Main entry point
fun main(args: Array<String>) {
  val user = User(Name="Anil", Age=33, Id=1012)
  printUser(user)
}

//print User's function
fun printUser(user: User){
  println(user)
}

//User's data class
data class User(val Name: String, val Age: Int, val Id: Int);


Can kotlin code be executed without JVM?
Yes!  It compiles Kotlin code into native code which can be executed without Java Virtual Machine (JVM).

What is data class in Kotlin?
This class holds the basic data type. It does not contain any functionality.

What are different Types of Constructors in Kotlin?
Two Types of Constructors in Kotlin -
1.      Primary Constructor - It is part of class header and is declared after class name.
2.      Secondary Constructor -It is declared inside class body and contains more than one secondary constructor.

What are primitive Data Types in kotlin?
Kotlin does not support primitive Data Types like in Java.

List of extension methods Kotlin provides to java.io.File?
1.      readBytes() - it  use for reading contents of file to Byte Array
2.      readText() - it use of reading contents of file to a single String
3.      forEachLine() - It use for reading a file line by line in Kotlin
4.      readLines() - It use to reading lines in file to List
5.      bufferedReader() - It use for reading contents of a file into Buffered Reader

How to compare two strings in Kotlin?
We can compare string using the below operators -
1.      Using “==” operator:
2.      compareTo() extension function

Can you migrate code from java to Kotlin?
Yes! Off course, the JetBrains IDEA provides inbuilt tool.
By Anil Singh | Rating of this article (*****)

Popular posts from this blog

nullinjectorerror no provider for httpclient angular 17

In Angular 17 where the standalone true option is set by default, the app.config.ts file is generated in src/app/ and provideHttpClient(). We can be added to the list of providers in app.config.ts Step 1:   To provide HttpClient in a standalone app we could do this in the app.config.ts file, app.config.ts: import { ApplicationConfig } from '@angular/core'; import { provideRouter } from '@angular/router'; import { routes } from './app.routes'; import { provideClientHydration } from '@angular/platform-browser'; //This (provideHttpClient) will help us to resolve the issue  import {provideHttpClient} from '@angular/common/http'; export const appConfig: ApplicationConfig = {   providers: [ provideRouter(routes),  provideClientHydration(), provideHttpClient ()      ] }; The appConfig const is used in the main.ts file, see the code, main.ts : import { bootstrapApplication } from '@angular/platform-browser'; import { appConfig } from ...

List of Countries, Nationalities and their Code In Excel File

Download JSON file for this List - Click on JSON file    Countries List, Nationalities and Code Excel ID Country Country Code Nationality Person 1 UNITED KINGDOM GB British a Briton 2 ARGENTINA AR Argentinian an Argentinian 3 AUSTRALIA AU Australian an Australian 4 BAHAMAS BS Bahamian a Bahamian 5 BELGIUM BE Belgian a Belgian 6 BRAZIL BR Brazilian a Brazilian 7 CANADA CA Canadian a Canadian 8 CHINA CN Chinese a Chinese 9 COLOMBIA CO Colombian a Colombian 10 CUBA CU Cuban a Cuban 11 DOMINICAN REPUBLIC DO Dominican a Dominican 12 ECUADOR EC Ecuadorean an Ecuadorean 13 EL SALVA...

How To convert JSON Object to String?

To convert JSON Object to String - To convert JSON Object to String in JavaScript using “JSON.stringify()”. Example – let myObject =[ 'A' , 'B' , 'C' , 'D' ] JSON . stringify ( myObject ); ü   Stayed Informed –   Object Oriented JavaScript Interview Questions I hope you are enjoying with this post! Please share with you friends!! Thank you!!!

Encryption and Decryption Data/Password in Angular

You can use crypto.js to encrypt data. We have used 'crypto-js'.   Follow the below steps, Steps 1 –  Install CryptoJS using below NPM commands in your project directory npm install crypto-js --save npm install @types/crypto-js –save After installing both above commands it looks like  – NPM Command  1 ->   npm install crypto-js --save NPM Command  2 ->   npm install @types/crypto-js --save Steps 2  - Add the script path in “ angular.json ” file. "scripts" : [                "../node_modules/crypto-js/crypto-js.js"               ] Steps 3 –  Create a service class “ EncrDecrService ” for  encrypts and decrypts get/set methods . Import “ CryptoJS ” in the service for using  encrypt and decrypt get/set methods . import  {  Injectable  }  from ...

Angular Testing Questions and Answers | 9, 8, 7, 6

What Is Testing? The testing is a tools and techniques for a unit and integration testing Angular applications . Why Test? Tests are the best ways to prevent software bugs and defects. How to Setup Test in Angular Project? Angular CLI install everything you need to test an Angular application. This CLI command takes care of Jasmine and karma configuration for you. Run this CLI command- ng test The test file extension must be “.spec.ts” so that tooling can identify the test file. You can also unit test your app using other testing libraries and test runners. Types of Test – The all great developer knows his/her testing tools use. Understanding your tools for testing is essential before diving into writing tests. The Testing depends on your project requirements and the project cost. The types of Testing looks like - 1.       Unit Test 2.       Integration Test 3.       En...