scala中是否存在用于从列表中删除项目的功能?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了scala中是否存在用于从列表中删除项目的功能?相关的知识,希望对你有一定的参考价值。
我正在编写待办事项列表,我可以在其中添加元素并删除它们。我在尝试从可变列表中删除项目时遇到问题。
val list = MutableList[Any]()
def removeItem(){
val input = scala.io.StdIn.readLine("
Enter item to remove:
").stripLineEnd
for(i <- 0 to list.size){
if (list[i] == input){
list[i] = 0
list -= input
}
}
}
def menu(option: Int): Boolean = {
option match {
case 1 =>
addItem()
true
case 2 =>
println("Enter item to remove")
removeItem
true
case 3 =>
println("
Here is your todo list:")
display()
true
case 4 =>
println("selected quit")
false
case _ => // the else case
println("Unrecognized command")
true
}
}
[当我从菜单中调用该功能以删除项目时,我希望我的删除项目功能能够遍历可变列表并删除其中=用户输入的项目,并允许我每次执行此操作调用函数,但是我得到了这个错误:';'预期,但找到了'='。list [i] = 0
答案
您可以尝试使用scala.collection.mutable.ListBuffer
。示例:
scala> import scala.collection.mutable.ListBuffer
import scala.collection.mutable.ListBuffer
scala> var mutableList = new ListBuffer[String]()
mutableList: scala.collection.mutable.ListBuffer[String] = ListBuffer()
scala> println(mutableList)// empty
ListBuffer()
scala> mutableList += "First element"
res1: scala.collection.mutable.ListBuffer[String] = ListBuffer(First element)
scala> println(mutableList)// 1 element
ListBuffer(First element)
scala> mutableList += "second element"
res3: scala.collection.mutable.ListBuffer[String] = ListBuffer(First element, second element)
scala> println(mutableList)// 2 elements
ListBuffer(First element, second element)
scala> // Deleting...
scala> mutableList -= "First element"
res5: scala.collection.mutable.ListBuffer[String] = ListBuffer(second element)
以上是关于scala中是否存在用于从列表中删除项目的功能?的主要内容,如果未能解决你的问题,请参考以下文章
InstallShield 2011 未从服务列表中删除服务
用于从 Appfabric 缓存中删除项目的 Powershell 命令