我不断收到错误信息,因为我在“无法访问的语句”行上方添加了评论。我怎样才能解决这个问题?这段代码还有什么问题吗?
boolean containsAll(IntSet [] s) {
return false;
// Unreachable Code begins here
for (int y = 0; y< s.length; y++) {
for (int i = 0; i< s[y].arr.length; i++) {
if (s[y].contains(i)) {
if (i>=arr.length) {
return false;
}
if (!arr[i]) {
return false;
}
}
}
}
return true;
}
答案 0 :(得分:1)
正如@Eli所建议的,只要你在函数中的某些语句之前有返回条件,它就永远不会到达那个代码,因此会给你编译错误
错误:无法访问的声明
如下图所示:
只需在第12行删除return false,如上图所示,它将编译您的程序而不会出现任何错误。
希望它有所帮助!!!
答案 1 :(得分:0)
boolean containsAll(IntSet [] s) {
return false; // <------- remove this
// Unreachable Code begins here
for (int y = 0; y< s.length; y++) {
for (int i = 0; i< s[y].arr.length; i++) {
if (s[y].contains(i)) {
if (i>=arr.length) {
return false;
}
if (!arr[i]) {
return false;
}
}
}
}
return true;
}
显然不会达到return
声明下面的代码。因为它会自动结束一个方法。 return
用于将Object值传递给函数/方法本身。尝试阅读本文,了解return
的含义将有很大帮助。 - &GT;&GT; Returning a Value in Method。