Я пытаюсь создать список задач в Scala, и у меня возникают проблемы с моей функцией addItem. Я хочу, чтобы он мог создавать массив строк, в котором хранится ввод пользователя, но с тем, что у меня сейчас, ввод пользователя переопределяется вместо сохранения старого ввода.
def addItem() = {
val input = scala.io.StdIn.readLine()
var list = Array[String](input) :+ input
list.foreach(println)
}
Я ожидаюэтот код для печати каждого пользовательского ввода, который был введен с момента компиляции, но вместо этого он просто печатает самый последний ввод 2 раза.
Я создал это меню и основную функцию, которая вызывает функцию, которую я хочу использовать.
def menu(option: Int): Boolean = {
option match {
case 1 =>
addItem()
true
case 2 =>
println("Enter item to delete")
true
case 3 =>
println("Here is your todo list")
false
case 4 =>
println("selected quit")
false
case _ => // the else case
println("Unrecognized command")
true
}
}
}
каждый раз, когда я нажимаю цифру 1, я хочу иметь возможность добавить элемент в список и сохранить этот элемент вместе с ранее добавленными. Я не могу понять, как хранить более одного значения с тем, что у меня есть. Моя цель - иметь возможность добавлять элемент для хранения каждый раз, не переопределяя ранее сохраненный элемент.
Я должен нажать 1, мне будет предложено добавить элемент, затем я ввожу элемент, и он должен быть сохранен. Если я снова нажму 1, мне снова будет предложено добавить еще один элемент, поэтому при печати после двух входов оба элемента должны печататься.