String value = when(storeType == StoreType.Database){
true -> getDatabase().getSettingsDao().getString("my value")
false -> getSettingsHelper().getSharedPreferences().getString("my value")
}
//misuse takeIf, but it looks more like your code
String value = takeIf{ storeType == StoreType.Database }
?.let{ getDatabase().getSettingsDao().getString("my value") }
?: getSettingsHelper().getSharedPreferences().getString("my value")
I personally use when most of the time.