Creare un menu console in Kotlin
All'inizio ho cercato una libreria apposita, come ce ne stanno tante per altri linguaggi.
Alla fine mi sono detto che il menu è composto da tre voci, e quindi può bastare crearselo da soli!
Ovviamente parliamo di un'applicazione in Kotlin da lanciare nel terminale, quindi niente gui.
Ecco qui sotto il codice che sto usando:
import java.lang.System.exit
import java.util.*
fun main(args: Array<String>) {
val options = arrayOf(
"1 - Musica",
"2 - Video",
"3 - Esci"
)
val scanner = Scanner(System.`in`)
var optScelta: Int = 0
while (optScelta != 3) {
for (option in options) {
println(option)
}
println("==========")
try {
optScelta = scanner.nextInt()
when (optScelta) {
1 -> FUZNIONE1()
2 -> FUZNIONE2()
3 -> exit(0)
}
} catch (ex: InputMismatchException) {
println("Immetti un valore tra 1 e " + options.size)
scanner.next()
} catch (ex: Exception) {
println(ex.message)
scanner.next()
}
}
}
Come vedete ho usato semplicemente Scanner per acquisire la scelta dell'utente.
Nel caso in cui si scelga un valore non previsto, viene riproposto il menu con l'avvertimento.
E anche nel caso di una qualsiasi altra eccezione.
Enjoy!
kotlin scanner
Commentami!