2017-10-13 107 views
0
public static bool isValid(int num) 
{ 
    bool status = true; 
    int digit, rev = 0, ck_num; // Added new variable 
    ck_num = num; // Assigned it to variable num 

    // Tests for palindrome 
    while (num) 
    { 
     digit = num % 10; 
     num /= 10; 
     rev = rev * 10 + digit; 
    } 

    if (rev == ck_num) // Checked it against unchanged variable 
     status = true; 
    else 
     status = false; 
    return status; 
} 

我已經將public static bool isValid參數設置爲(int num),但它仍然表示int類型不能轉換爲bool。有人可以幫我解決這個問題嗎?不能隱式地將類型'int'轉換爲'bool'[

+1

問題是'while(num)'。 'num'不是一個bool。它需要的條件是什麼? 'num> x,num

+0

'while(num)'=>同時需要'bool'條件來停止循環,並且您需要包含像'rev

回答

2

在while循環中,您必須提供一個條件(bool),以便循環一直持續到滿足條件。你有提供一個int而不是一個條件(布爾),所以while(num)給你一個錯誤。只要將它改爲while(num!= 0),那應該給你一個修復。

相關問題