C++代碼:if (!(number % i)) {
C++與Java除法運算
Java代碼:if (!(number % i == 0)) {
是嗎?
正確的版本:
Java代碼:if ((number % i == 0)) {
C++代碼:if (!(number % i)) {
C++與Java除法運算
Java代碼:if (!(number % i == 0)) {
是嗎?
正確的版本:
Java代碼:if ((number % i == 0)) {
正確的,是的。 雖然他們不會做同樣的事情。
在Java中,您需要進行比較,因爲沒有自動轉換爲布爾值。
等效C++代碼將是要麼
if (!(number % i == 0))
或簡單地
if (number % i)
是的,這將是正確的。
爪哇,治療boolean
作爲separate data type
其具有2個不同的值:真和假
C++關於整數0
爲等價於假和其他值是真實的。
但是,您已顛倒了語句中的邏輯。
if (!(number % i)) { //returns true if number is divisible by i
if (!(number % i == 0)) { //returns true if number is not divisible by i
什麼問題?是*什麼*對嗎? –
'if(number%i!= 0)'too too ... – assylias
我的建議是在這兩種語言中使用'(數字%i == 0)'。它起作用了,它使意圖清晰。在正常情況下,使用'if(!(number%i))'不會獲益。 – Zane