初学者问题,不兼容的类型:布尔型到整型.没有看到问题所在



尝试找出数字中是否有奇数,如果是,则返回true。如果有返回false。获取错误:不兼容的类型:boolean不能转换为int。如有任何帮助,不胜感激。

public class allDigitsOddTest{
public static void main(String[] args) {
allDigitsOdd(756410);
}
public static int allDigitsOdd(int num){
boolean value = true;
int evens = 0;
int odds = 0;

while (num > 0){
int remainder = num % 10;

if (remainder % 2 == 0){
evens++;
}
else{
odds++;
}   
num = num / 10; 
} 
if (evens > 0){
value = false;
}
return value;
}
}

您的返回类型是整型,而不是布尔型

改变
public static int allDigitsOdd(int num) 

public static boolean allDigitsOdd(int num)  {

一开始,像这样看方法对我帮助很大:

你试图打开家里的门,你有钥匙。你使用三把钥匙中的哪把并不重要,因为它适用于你的每把钥匙。但是,如果你尝试你的车钥匙不适合,任务是失败的。

所以把不同的数据类型看作钥匙,你可以用你的主钥匙锁门,你的女朋友稍后用她的钥匙打开它。→一个键输入,另一个键输出,如果你明白我的意思。

对于Java也是一样,你给方法一个整数,你可以返回任何你想要的整数,但不能返回不同的数据类型(或键类型)。

也许是一个奇怪的例子,但出于某种原因,它对我帮助很大。

最新更新