Java的位運算符和邏輯運算符
在許多古老的微處理器上, 位運算比加減運算略快, 通常位運算比乘除法運算要快很多。 在現代架構中, 情況並非如此:位運算的運算速度通常與加法運算相同(仍然快於乘法運算).下面小編準備了關於Java的位運算符和邏輯運算符,提供給大家參考!
一. 與、或、非、異或運算
與
0&&0 =0
1&&0 =0
0&&1 =0
1&&1 =1
或
0||0 =0
1||0 =1
0||1 =1
1||1 =1
非(求反)
~1 =0
~0 =1
異或
真^假=真
假^真=真
假^假=假
真^真=假
如:11001010 與
00011011 進行與或以及異或運算,結果分別是:
00001010 、11011011、11010001
二、位運算符
“>> 右移”;“<< 左移”;“>>> 無符號右移”
注意:右移相當於是除,左移相當於就是乘,左移一位乘以2,左移二位乘以4,依此類推。
無論正數、負數,它們的右移、左移、無符號右移32位都是其本身,比如 -5<<32=-5、-5>>32=-5、-5>>>32=-5
如:-5>>3=-1
-5<<3=-40
5>>3=0
5<<3=40
-5>>>3=536870911
-
2016年最新JAVA編程題及答案
【程序1】題目:打印出所有的"水仙花數",所謂"水仙花數"是指一個三位數,其各位數字立方和等於該數本身。例如:153是一個"水仙花數",因為153=1的三次方+5的三次方+3的三次方。1.程序分析:利用for循環控制100-999個數,每個數分解出個位,十位,百位。【程序2】題目:古典問題:有...
-
Java程序中使用浮點數和小數的技巧
許多程序員在其整個開發生涯中都不曾使用定點或浮點數,可能的例外是,偶爾在計時測試或基準測試程序中會用到。下面小編準備了關於Java程序中使用浮點數和小數的技巧,歡迎大家參考!雖然幾乎每種處理器和編程語言都支持浮點運算,但大多數程序員很少注意它。這容易理...
-
關於Java動態代理的解析
動態代理類是位於ect包下的InterfaceInvocationHandler。下面小編準備了關於Java動態代理的解析,提供給大家參考!眾所周知,JDK的動態代理模式必須實現接口。以下面的源碼為例:接口一:publicinterfaceActionInterface{voiddoSelf(Stringstr);StringgetType();}接口...
-
Java main方法經典面試題
以下是筆者認為比較經典的關於Javamain方法的面試題,與其説是Java面試題,其實也是Java的一些最基礎知識問題,分享給大家,希望對大家面試有所幫助!1.不用main方法如何定義一個類?不行,沒有main方法我們不能運行Java類。在Java7之前,你可以通過使用靜態初始化運行Java...