亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    深入理解java中的異或運(yùn)算符

    深入理解java中的異或運(yùn)算符

    Java中的位運(yùn)算符中有一個叫做異或的運(yùn)算符,符號為(^)或者 Xor

    異或8個字總結(jié) 相同出0 不同出1

    int a=1; int b=1; System.out.println(a^b);

    這里則輸出 0

    int a=12; int b=0; System.out.println(a^b);

    這里則輸出 12

    小結(jié): 相同的兩個數(shù)會輸出0既false ,另一個數(shù)為0 則輸出它本身,下面為大家演示兩個不同的數(shù)字

    相關(guān)視頻教程推薦:java在線教程

    運(yùn)算規(guī)則

    其運(yùn)算規(guī)則是:在兩個二進(jìn)制操作數(shù)的相同位中

    如:a=7; b=4;

    a=0111; b=0100; (因為int是占據(jù)32位的,前面的位數(shù)都為0 ,所只展示后4位)

    a^b=?

    深入理解java中的異或運(yùn)算符

    得出 a^b =3

    下面為大家詳細(xì)講解在不使用第三方的情況下交換兩個屬性中的值

    我們要實現(xiàn)的是a=4; b=7;

    公式為 a=a^b;
    b=a^b;
    a=a^b;
    第一步分析:

    深入理解java中的異或運(yùn)算符

    第一步結(jié)束后值為: a=3; b=7;

    第二步:b=a^b;

    深入理解java中的異或運(yùn)算符

    第二步結(jié)束后的值:a=3; b=4;

    第三步:a=a^b;

    深入理解java中的異或運(yùn)算符

    第三步結(jié)束后的值:a=7; b=4;

    異或運(yùn)算有三個特征,一個是0與一個數(shù)做異或操作還是本身,本身與本身做異或操作為0,異或操作還滿足交換率。
    利用a^a=0的特點(diǎn)實現(xiàn)這個功能,在一個數(shù)組中找出出現(xiàn)次數(shù)為奇數(shù)的,也可理解為出現(xiàn)一次的;

    這里直接上代碼;

    private static void ddd() { 		int a[] = { 22, 38, 38,5, 22, 4, 4, 11, 11 }; 		int t = 0; 		for (int i = 0; i < a.length; i++) { 			t ^= a[i]; 		} 		System.out.println(t); 	}

    這里將會直接輸出 5

    下面是一些異或的基本知識,有興趣的可研究一下;

    1. a ^ b = b ^ a

    2. a ^ b ^ c = a ^ (b ^ c) = (a ^ b) ^ c;

    3. d = a ^ b ^ c 可以推出 a = d ^ b ^ c.

    4. a ^ b ^ a = b.

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號