Java 将int返回为布尔值

Java 将int返回为布尔值,java,android,eclipse,apk,aapt,Java,Android,Eclipse,Apk,Aapt,我是初学者,请耐心听我说。我反编译了一个专业应用程序的源代码。当我将源代码复制到eclipse中时,以下代码出现了一个错误(该错误与返回类型有关): 如何更改代码以保持其正确性,同时保持功能?将返回类型从boolean更改为int 如您所见,您的方法正在返回i,它在for循环中声明为int,因此您的方法的返回类型必须与它返回的变量类型相同。将返回类型从布尔值更改为int 如您所见,您的方法返回的i在for循环中声明为int,因此方法的返回类型必须与其返回的变量类型相同。您可以将i转换为布尔值,或

我是初学者,请耐心听我说。我反编译了一个专业应用程序的源代码。当我将源代码复制到eclipse中时,以下代码出现了一个错误(该错误与返回类型有关):


如何更改代码以保持其正确性,同时保持功能?

将返回类型从
boolean
更改为
int


如您所见,您的方法正在返回
i
,它在
for
循环中声明为
int
,因此您的方法的返回类型必须与它返回的变量类型相同。

将返回类型从
布尔值更改为
int


如您所见,您的方法返回的
i
for
循环中声明为
int
,因此方法的返回类型必须与其返回的变量类型相同。

您可以将
i
转换为
布尔值,或者更改
返回i
返回i!=0;
,对于
i
的所有非零值均为真,如果
i==0
,则为假


作为旁注,我真的认为没有理由在
for
循环中包装
return
。在这种情况下,您最好将这两行都替换为
return0
(或
返回false;
,以匹配方法签名)。

您可以将
i
强制转换为
布尔值,或更改
返回i
返回i!=0;
,对于
i
的所有非零值均为真,如果
i==0
,则为假


作为旁注,我真的认为没有理由在
for
循环中包装
return
。在这种情况下,您最好将这两行都替换为
return0
(或
返回false;
,以匹配方法签名)。

为什么投票失败?OP可能提出了一个非常基本的问题。我们真的想惩罚那些仍在学习的年轻程序员吗?这个应用看起来非常专业。大多数noobish问题都有专业和令人鼓舞的答案。。。不要投反对票,让他学习…学习。。。从反编译。。。。你一定是在开玩笑……对不起,如果他是初学者,他应该阅读for循环文档,而不是重写愚蠢的编写方法来保持结果。在这里学习:那么他甚至不需要问这样的问题。为什么要投反对票?OP可能提出了一个非常基本的问题。我们真的想惩罚那些仍在学习的年轻程序员吗?这个应用看起来非常专业。大多数noobish问题都有专业和令人鼓舞的答案。。。不要投反对票,让他学习…学习。。。从反编译。。。。你一定是在开玩笑……对不起,如果他是初学者,他应该阅读for循环文档,而不是重写愚蠢的编写方法来保持结果。在这里学习:这样他就不需要问这样的问题了。好吧,好吧。。。但是这个循环没有意义,它只是意味着返回0Ok,ok。。。但是这个循环没有意义,它只意味着返回0。。。因此,投票被否决。这就是为什么塞尔文和我对问题中的陷阱提出了警告。我严重怀疑这是一个诚实的问题(一个反编译东西来分析for循环的初学者?甚至没有读过关于for循环的书?)。对我来说,这更像是有人在恶作剧。。。。因此,投票被否决。这就是为什么塞尔文和我对问题中的陷阱提出了警告。我严重怀疑这是一个诚实的问题(一个反编译东西来分析for循环的初学者?甚至没有读过关于for循环的书?)。对我来说,这更像是有人在恶作剧。
public boolean method(){
...
...
   for(int i = 0; ; i = 1){
       return i;
}