位操作符判斷奇偶性的原理:
1、“與”龙助、“位與”(&)
? ? ? ? 按位“與”操作符砰奕,如果兩個數(shù)的二進制,相同位數(shù)都是1提鸟,則該位結(jié)果是1军援,否則是0.
2、“或”称勋、“位或”(|)
? ? ? ? 按位“或”操作符胸哥,如果兩個數(shù)的二進制,相同位數(shù)有一個是1赡鲜,則該位結(jié)果是1空厌,否則是0
3、“異或蝗蛙、“位異或”(^)
? ? ? ? 按位“異或”操作符蝇庭,如果兩個數(shù)的二進制,相同位數(shù)只有一個是1捡硅,則該位結(jié)果是1哮内,否則是0
4、“非”壮韭、“位非”(~)也稱為取反操作符
? ? ? ? 按位“非”操作符北发,屬于一元操作符,只對一個操作數(shù)進行操作喷屋,(其他按位操作符是二元操作符)琳拨。按位“非”生成與輸入位相反的值,——若輸入0屯曹,則輸出1狱庇,若輸入1,則輸出0恶耽。
其他細(xì)節(jié):
一定要寫主函數(shù)= =
switch后面的表達(dá)一定要用括號括起來
判斷素數(shù):
鏈接:https://www.zhihu.com/question/308322307/answer/574767625
證明:令x≥1密任,將大于等于5的自然數(shù)表示如下:
······ 6x-1,6x偷俭,6x+1浪讳,6x+2,6x+3涌萤,6x+4淹遵,6x+5口猜,6(x+1),6(x+1)+1 ······
可以看到透揣,不在6的倍數(shù)兩側(cè)济炎,即6x兩側(cè)的數(shù)為6x+2,6x+3淌实,6x+4冻辩,由于2(3x+1),3(2x+1)拆祈,2(3x+2)恨闪,所以它們一定不是素數(shù),再除去6x本身放坏,顯然咙咽,素數(shù)要出現(xiàn)只可能出現(xiàn)在6x的相鄰兩側(cè)。這里有個題外話淤年,關(guān)于孿生素數(shù)钧敞,有興趣的道友可以再另行了解一下,由于與我們主題無關(guān)麸粮,暫且跳過溉苛。這里要注意的一點是,在6的倍數(shù)相鄰兩側(cè)并不是一定就是質(zhì)數(shù)弄诲。
此時判斷質(zhì)數(shù)可以6個為單元快進愚战,即將方法(2)循環(huán)中i++步長加大為6,加快判斷速度齐遵,原因是寂玲,假如要判定的數(shù)為n,則n必定是6x-1或6x+1的形式梗摇,對于循環(huán)中6i-1拓哟,6i,6i+1,6i+2伶授,6i+3断序,6i+4,其中如果n能被6i糜烹,6i+2逢倍,6i+4整除,則n至少得是一個偶數(shù)景图,但是6x-1或6x+1的形式明顯是一個奇數(shù),故不成立碉哑;另外挚币,如果n能被6i+3整除亮蒋,則n至少能被3整除,但是6x能被3整除妆毕,故6x-1或6x+1(即n)不可能被3整除慎玖,故不成立。綜上笛粘,循環(huán)中只需要考慮6i-1和6i+1的情況趁怔,即循環(huán)的步長可以定為6,每次判斷循環(huán)變量k和k+2的情況即可薪前,理論上講整體速度應(yīng)該會是方法(2)的3倍润努。
————————————————
版權(quán)聲明:本文為CSDN博主「huang_miao_xin」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議示括,轉(zhuǎn)載請附上原文出處鏈接及本聲明铺浇。
原文鏈接:https://blog.csdn.net/huang_miao_xin/java/article/details/51331710
數(shù)組打印
Arrays.toString(arr_name)
直接寫arr_name會打印首地址
賦值運算符
基本的賦值運算符是“=”。他的優(yōu)先級別低于其他的運算符垛膝,所以對該運算符往往最后讀取鳍侣。
運算符實例等價于
=n=25
1.= 賦值運算符
變量=表達(dá)式如:a=3;將a的值賦為3
2./= 除后賦值
變量/=表達(dá)式 如:a/=3;即a=a/3
3.*= 乘后賦值
變量*=表達(dá)式 如:a*=3;即a=a*3
4.%= 取余后賦值
變量%=表達(dá)式 如:a%=3;即a=a%3
5.+= 加后賦值
變量+=表達(dá)式 如:a+=3;即a=a+3
6.-= 減后賦值
變量-=表達(dá)式如:a-=3;即a=a-3
7.<<= 左移后賦值
變量<<=表達(dá)式 左移就是將<<左邊的數(shù)的二進制各位全部左移若干位吼拥,<<右邊的數(shù)指定移動位數(shù)倚聚,高位丟棄,低位補0凿可, 移幾位就相當(dāng)于乘以2的幾次方
8.>>= 右移后賦值
變量>>=表達(dá)式右移運算符是用來將一個數(shù)的各二進制位右移若干位惑折,移動的位數(shù)由右操作數(shù)指定(右操作數(shù)必須是非負(fù)值),移到右端的低位被舍棄矿酵,對于無符號數(shù)唬复,高位補0。對于有符號數(shù)全肮,某些機器將對左邊空出的部分用符號位填補(即“算術(shù)移位”)敞咧,而另一些機器則對左邊空出的部分用0填補(即“邏輯移位”)。注意:對無符號數(shù),右移時左邊高位移入0辜腺;對于有符號的值,如果原來符號位為0(該數(shù)為正),則左邊也是移入0休建。如果符號位原來為1(即負(fù)數(shù)),則左邊移入0還是1,要取決于所用的計算機系統(tǒng)。有的系統(tǒng)移入0,有的系統(tǒng)移入1评疗。移入0的稱為“邏輯移位”,即簡單移位测砂;移入1的稱為“算術(shù)移位”。
9.&= 按位與后賦值
變量&=表達(dá)式
按位與是指:參加運算的兩個數(shù)據(jù)百匆,按二進制位進行“與”運算砌些。如果兩個相應(yīng)的二進制位都為1,則該位的結(jié)果值為1;否則為0存璃。這里的1可以理解為邏輯中的true,0可以理解為邏輯中的false仑荐。按位與其實與邏輯上“與”的運算規(guī)則一致。邏輯上的“與”纵东,要求運算數(shù)全真粘招,結(jié)果才為真。若偎球,A=true,B=true,則A∩B=true
10. ^= 按位異或后賦值
變量^=表達(dá)式參與運算的兩個量按照對應(yīng)的位進行異或運算洒扎,且
0^0→0, 0^1→1, 1^0→1, 1^1→0
此外,一個數(shù)與0異或仍保持不變衰絮,即a^0=a
一個數(shù)與自己異或結(jié)果為0袍冷,即a^a=0
11.|= 按位或后賦值
變量|=表達(dá)式 參與運算的兩個量按照對應(yīng)位進行或運算,且0|0→0, 0|1→1, 1|0→1, 1|1→1
EQ 就是 EQUAL等于
NE 就是 NOT EQUAL不等于
GT 就是 GREATER THAN大于
LT 就是 LESS THAN小于
GE 就是 GREATER THAN OR EQUAL 大于等于
LE 就是 LESS THAN OR EQUAL 小于等于