-
二進制位運算查看全部
-
此圖記住查看全部
-
1,&(與) 兩位全為1,結果才位1 用法:清零(將想清零的位和0進行與運算) 保留指定位(將想保留的位和1進行與運算) 2,|(或) 只要有一個為1,結果就為1 用法:指定位置1(將想置1的位和1進行或運算) 3,^(異或) 兩個相應位為“異”,則該位結果為1,否則為0 用法:值不同為1,相同為0 使特定位翻轉(將要翻轉的位和1進行異或運算) 保留指定位(將要保留的位和0進行異或運算 4,~(取反運算) 對一個二進制制數(shù)按位取反,即將0變1,1變0; 5,<<(左移運算) 講一個運算對象的各二進制位全部左移干位(左邊的二進制位丟棄,右邊補0)。若最高位為1,則不符合該運算規(guī)則 用法:左邊的二進制位丟棄,右邊補0。每左移一位相當于乘2 6,>>(右移運算) 講一個數(shù)的各二進制全部右移干位,正數(shù)左補0,負數(shù)左補1,右邊丟棄。操作數(shù)每右移一位,相當于該數(shù)除以2. 用法:正數(shù)左補0,負數(shù)左補1,右邊丟棄。每右移一位相當于除以2 6.無符號右移運算>>>:右移后左邊空出的位用0填充,移除右邊的位被丟棄查看全部
-
2.按位或|查看全部
-
1.按位與&運算查看全部
-
位運算威力:http://blog.csdn.net/iukey/article/details/7195265 大小端詳解:http://blog.csdn.net/zhaoshuzhaoshu/article/details/37600857查看全部
-
把數(shù)據(jù)類型轉換為字節(jié) 方便跨平臺解析數(shù)據(jù)查看全部
-
運算的應用 可以一看查看全部
-
①按位與:清零(將想清零的位和0進行與運算) 保留指定位(將想保留的位和1進行與運算) ②按位或:指定位置1(將想置1的位和1進行或運算) ③異或:值不同為1,相同為0 使特定位翻轉(將要翻轉的位和1進行異或運算) 保留指定位(將要保留的位和0進行異或運算) ⑤左移運算<<:左邊的二進制位丟棄,右邊補0。每左移一位相當于乘2 ⑥右移運算>>:正數(shù)左補0,負數(shù)左補1,右邊丟棄。每右移一位相當于除以2 ⑦無符號右移運算>>>:右移后左邊空出的位用0填充,移除右邊的位被丟棄查看全部
-
換算為二進制采用短除2,余數(shù)從下往上數(shù)查看全部
-
使用位運算 異或 來實現(xiàn)交換律 A=A^B B=A^B A=A^B查看全部
-
字符串 字節(jié) 轉換查看全部
-
進制轉換查看全部
-
Integer.valueOf()方法實現(xiàn)如下: [java] view plain copy public static Integer valueOf(int i) { final int offset = 128; if (i >= -128 && i <= 127) { // must cache return IntegerCache.cache[i + offset]; } return new Integer(i); } Integer.valueOf()方法基于減少對象創(chuàng)建次數(shù)和節(jié)省內(nèi)存的考慮,緩存了[-128,127]之間的數(shù)字。此數(shù)字范圍內(nèi)傳參則直接返回緩存中的對象。在此之外,直接new出來。 IntegerCache的實現(xiàn): [java] view plain copy private static class IntegerCache { private IntegerCache(){} static final Integer cache[] = new Integer[-(-128) + 127 + 1]; static { for(int i = 0; i < cache.length; i++) cache[i] = new Integer(i - 128); } } 測試代碼 [java] view plain copy Integer i1 = Integer.valueOf(12); Integer i2 = Integer.valueOf(12); Integer i3 = Integer.valueOf(129); Integer i4 = Integer.valueOf(129); System.out.println(i1==i2); System.out.println(i3==i4); System.out.println(i1.equals(i2)); System.out.println(i3.equals(i4)); 打印結果如下: true false true true查看全部
-
Integer.valueof(String s)和Integer.parseInt(String s)的具體區(qū)別是什么? Integer.valueof(String s)是將一個包裝類是將一個實際值為數(shù)字的變量先轉成string型再將它轉成Integer型的包裝類對象(相當于轉成了int的對象)這樣轉完的對象就具有方法和屬性了。 而Integer.parseInt(String s)只是將是數(shù)字的字符串轉成數(shù)字,注意他返回的是int型變量不具備方法和屬性。 設有下面兩個賦值語句: a=Integer.parseInt(“123”); b=Integer.valueOf(“123”).intValue(); 下述說法正確的是(d)。 A、a是整數(shù)類型變量,b是整數(shù)類對象。 B、a是整數(shù)類對象,b是整數(shù)類型變量。 C、a和b都是整數(shù)類對象并且值相等。 D、a和b都是整數(shù)類型變量并且值相等。 解釋: parseInt(Strings)方法是類Integer的靜態(tài)方法,它的作用就是將形參s轉化為整數(shù),比如: Interger.parseInt("1")=1; Integer.parseInt("20")=20; Integer.parseInt("324")=324; 當然,s表示的整數(shù)必須合法,不然是會拋異常的。 valueOf(Strings)也是Integer類的靜態(tài)方法,它的作用是將形參s轉化為Integer對象, 什么是Integer對象,Integer就是基本數(shù)據(jù)類型int型包裝類,就是將int包裝成一個類,這樣在很多場合下是必須的。如果理解不了,你就認為int是Integer的mini版,好用了很多,但也丟失了一些功能,好了,看代碼: Interger.valueOf("123")=Integer(123) 這時候Integer(123)就是整數(shù)123的對象表示形式,它再調(diào)用intValue()方法,就是將123的對象表示形式轉化為基本數(shù)據(jù)123 所以,選擇D查看全部
舉報
0/150
提交
取消