如何使scala程序循环并读取字符串中的每个字母

时间:2020-05-06 22:00:06

标签: scala

我正在尝试使程序经过预定的字符串,并以与我发布的内容类似的方式一一读取每个字符。 IDE告诉我不能执行“ cs> = 1”,因为“> =”不属于“(Char => Boolean)=> Int”。

def move(s: String) {
  var chemov = s.take(1)
  var cs = s.count(_)
  while (cs >= 1){
    ad()
    s.drop(1)
  }
}

1 个答案:

答案 0 :(得分:2)

s.count()不能给您s的长度,但是可以给您谓词匹配的出现次数。仅提供下划线,cs不是整数,而是函数。这就是为什么您得到错误。您可以使用s.length

获得尺寸

如果要使用count,则必须提供一个功能:

var cs = s.count(_ => true)

或者,您可以遍历字符串:

s.foreach( c => {
    ad()
})
相关问题