我是 scala 的新手,但我遇到了以下代码的问题:
var c:Int = 0
var j:Int = 0
for( c <- 0 to 100){
for( j <- 0 to 100){
/* Check if jth bit in c is set,
if( (c & (1<<j)) ) // this line is the line where i get the error
xs :+ (ys(j)) // this is copying element j from list ys to list xs
}
}
我得到的错误是:类型不匹配;找到:需要 Int:布尔值
代码 (c & (1<<j))
应该将 1 左移 j 位,然后将结果按位与变量 c 中的 int 相乘以获得布尔结果。
我完全有可能做错了什么。我学习 Scala 已经 3 天了,我对我的 java 非常生疏。
任何帮助将不胜感激