当我编译下面的代码时,我得到:“错误:不兼容的类型:布尔值不能转换为Callable”
Callable<Boolean> updateTwitEkshaHndle(String Axl, int buyoncy)
{
String bufferMe=null;
return() -> {
/**Eksha code**/
while (true)
{
/**Looping Logic to filling "bufferMe" **/
// bufferMe = some valid data
}
};
return ((bufferMe == null || bufferMe.isEmpty()) ? false : true);
}
我在并发等待时间API中调用此方法。
await().atMost(2 secs).until(updateTwitEkshaHndle("poter", vasl));
我是Java的新手,有人可以让我对这个问题有所了解。
EDIT1: 我将以下return语句更改为:
return (!(bufferMe == null || bufferMe.isEmpty())
还是我遇到了同样的问题。
我一起决定覆盖Callable :: call(),我的尝试如下所示:
Callable<Boolean> updateTwitEkshaHndle(String Axl, int buyoncy)
{
String bufferMe=null;
****return new Callable<Boolean>() {**
@Override
public Boolean call() throws Exception {**
/**Eksha code**/
while (true)
{
/**Looping Logic to filling "bufferMe" **/
// bufferMe = some valid data
}
}
};
return (!(bufferMe == null || bufferMe.isEmpty()))
}
} 此后,我开始收到类似
的错误错误:类型非法开始 返回新的Callable(){错误:';'预期 返回新的Callable(){错误:不是语句 返回新的Callable(){错误:';'预期 返回新的Callable(){错误:表达式的非法开头 公共布尔call()引发异常{
我已经从'concurrent'导入了所需的软件包。我推测这里有些基本或先决条件是不对的。