Java – How to call a method after a delay in Android

androiddelayhandlerjava

I want to be able to call the following method after a specified delay.
In objective c there was something like:

[self performSelector:@selector(DoSomething) withObject:nil afterDelay:5];

Is there an equivalent of this method in android with java?
For example I need to be able to call a method after 5 seconds.

public void DoSomething()
{
     //do something here
}

Best Solution

Kotlin

    Handler(Looper.getMainLooper()).postDelayed({
      //Do something after 100ms
    }, 100)

Java

    final Handler handler = new Handler(Looper.getMainLooper());
    handler.postDelayed(new Runnable() {
      @Override
      public void run() {
        //Do something after 100ms
      }
    }, 100);