我正在尝试使用以下代码在scala中使用GraphX
val vertexRDD: RDD[(VertexId, String)] = graph.vertices.filter({
case (id, (str)) => {
val c: Boolean = scala.util.Try(str.toInt) match {
case Success(_) => false
case _ => true
}
}
})
此功能使用官方界面def filter(pred: Tuple2[VertexId, VD] => Boolean): VertexRDD[VD]
然而,它会引发type mismatch
错误
[error] found : Unit
[error] required: Boolean
[error] }
[error] ^
怎么可能?我已经将回报指定为Boolean
,它确实是Boolean
,我是对的吗?...
答案 0 :(得分:2)
这个失败的原因是块的值是块中最后一个表达式的值,但遗憾的是块中的最后一个表达式是类型为function elementOccurs (item, list){
for(var i = 0; i < list.length; i++){
if(item == list[i]){
console.log("state is found");
return true
}
}
return false
}
var status = elementOccurs(yourItem,list)
的声明。要解决此问题,您只需删除声明即可。
您还可以使用Microsoft.Maps.Events.addHandler(pin, 'click', () => {
this.router.navigateByUrl('/dashboard');});
并删除一些不必要的括号来简化您的代码
Unit