2012-02-08 26 views

cevap

24

% Java bir kalan işlemini yapar.

uygun modülüne almak için, bir işlevde kalanını kullanabilirsiniz:

Bu işaret hata düzeltmeyi yapmak üçlü operatörü kullanarak en kısa var: ve üçlü sevmiyorum olanlar için

private int mod(int x, int y) 
{ 
    int result = x % y; 
    return result < 0? result + y : result; 
} 

operatörü, bu eşdeğeri:

+0

Teşekkürler Don, işe yarıyor. –

+0

@don roby: bu operatörün anlamı nedir: sonuç <0? sonuç + y: sonuç; teşekkürler – Kenji

+0

@Kenji - bkz. [wikipedia üçlü operatörde ?:] (http://en.wikipedia.org/wiki/%3F :) –

8

Çünkü -2'yi 6'ya bölerseniz, -2 kadarını alırsınız. % operatörü kalanını aşağıdaki gibi verecektir;

int remainder = 7 % 3; // will give 1 
int remainder2 = 6 % 2; // will give 0 

modulo almak için:

// gives m (mod n) 
public int modulo(int m, int n){ 
    int mod = m % n ; 
    return (mod < 0) ? mod + n : mod; 
} 
+0

Tamam, ama sonra Android'de nasıl mod alırım? –