基礎才是重中之重 位的運算

2022-02-19 17:53:51 字數 1531 閱讀 9278

回到目錄

位運算無論在c#,vb還是在t-sql裡都有對它支援,位運算即對數值型別的每位進行計算,對於程式裡,你可以使用十進位制,十六進製制,二進位制對它進行位運算,事實上無論你使用哪種進製,對於計算機來說最後都為把它轉換成二進位制(0,1)的形式,因為二進位制為簡單,呵呵。

下面是關於位運算的**

運算符號

位運算操作符

運算物件型別

運算結果型別

物件運算元例項~

運算

整型整型

1個~x

&運算

2個x & y

|運算

2個x | y

^異或運算

2個x ^ y

<< 

左移運算

2個x << 2

>> 

右移運算

2個x >> 2

一般地,這種位運算中,我們的運算元多用於2的n次方的結果,如0,2,4,8,16,32,64,128...,為什麼呢,因為這些數字在轉換成二進位制後都很

特別,看一下**,呵呵

1   1

2     10

4       100

8     1000

16     10000

32     100000

64     1000000

128   10000000

看到時了它,它們只是在最高位是為1,而其它位上都是0,這樣對於這些數字在進行位運算時,會有一些性質,我來總結一下:

對於滿足2的n次方的十進位制數字有以下運算特性:

1 與運算可以用來判斷某個數是位在另外乙個數中存在:

10 & 2

//結果為2,大於0表示運算元2在運算元1中存在 10=8+2

2 或運算可以用來將兩個數相加在一起

8 | 2

//結果為10,10 | 2 結果還是10,你可以把它轉換為二進位製看一下,(1000 | 10 為1010,而1010 | 10 結果還是1010 ))呵呵,而10|4結果為14

3 非運算和與運算在一起使用,可以將乙個元素從乙個集合裡去除

4 & (~2) //

結果為4,4裡不包含2,所以直接返回原值4

3 & (~2) //

結果為1,3由1和2組成,所以去掉2後原值變為1

4 左移運算,每移1位相當於乘2

4

<< 2

//結果為16

5 右移去處,每移1位相當於除2

4 >> 2

//結果為1

總結:有時候,我們在書本上看到的及網路上看到的東西,不一定是正確的,有時,要求我們自己開啟電腦去驗證一下,呵呵!

有時候,程式設計的東西,很多時候當你把十進位制變成二進位制後會,就海闊天空了,呵呵!

回到目錄

基礎才是重中之重 方法override詳解

回到 目錄 方法的override,即方法的覆寫或者重寫,有時還是習慣叫它英文override,它是指將父類的abstract或者virtual方法進行重新設計,可以將新的功能加入其中,看起來很不錯,但在使用過程中,有時我們可能拿不準它,下面我說幾點 一 父類是抽象類,這時,它的例項化需要通過子類來...

基礎才是重中之重 執行緒安全的Hashtable

執行緒安全就是多執行緒訪問時 web網頁多使用者訪問乙個頁面時 採用了加鎖機制,當乙個執行緒訪問該類的某個資料時,進行保護,其他執行緒不能進行訪問直到該執行緒讀取完,其他執行緒才可使用。不會出現資料不一致或者資料汙染。hashtable 表示鍵 值對的集合,這些鍵 值對根據鍵的雜湊 進行組織,它的k...

基礎才是重中之重 執行緒安全的Hashtable

執行緒安全就是多執行緒訪問時 web網頁多使用者訪問乙個頁面時 採用了加鎖機制,當乙個執行緒訪問該類的某個資料時,進行保護,其他執行緒不能進行訪問直到該執行緒讀取完,其他執行緒才可使用。不會出現資料不一致或者資料汙染。hashtable 表示鍵 值對的集合,這些鍵 值對根據鍵的雜湊 進行組織,它的k...