1. 程式人生 > >java學習基礎總結

java學習基礎總結

相同 自動類型轉換 強制類型轉換 例子 ole 十六 基本 部分 span

1.java中變量按照數據類型類分類:基本數據類型  and  引用數據類型(數組&類&接口)
     >基本數據類型
        整型:byte(8bit) short int(默認類型)  long(數值末尾添加l/L)
        浮點型:float double(默認類型)
        字符型:char(‘ ‘,這裏必須用單引號表示字符,js裏面則沒有具體要求)
        布爾值型: boolean(取值為true或者false,和js一樣)
2.進制
       十進制  二進制 八進制 十六進制
        >二進制:計算機底層都是用二進制來存儲,運算的
        
>二進制在底層存儲:正數,負數都是以補碼的形式存儲和計算的(原碼,反碼,補碼) >四種進制間的轉換 3.變量的運算 a.自動類型轉換:容量小的數據類型自動轉換為容量大的數據類型 short s=12; int i = s +2; ps:byte short char 之間做運算,結果為int型!所以,s+2,一定為int類型 b.強制類型轉換:是a的逆過程,使用"()"實現強轉.
運算符是一種特殊的符號,用以表示數據的運算,賦值和比較等.
算術運算符:
+ - +- * / % ++ -- 
ps:  
1) /: int i = 12 ; i = i / 5; //i=2 2)%: 最後的符號只跟被模數相同 3)前++: 先+1,後運算 後++:先運算,後+1 4)+: String 字符串與其他數據類型只能做連接運算,且結果為String類型 賦值運算符:
= += -= *= /= %= int i=12; i=i*5; i*=5; // 同上 [特別的] short s=10; s=s+5; //編譯會報錯,這裏生成的s應該為int 型 s=(short)(s+5); // ok s+=5; // s=s+5,但是這裏編譯不會報錯,這種寫法不會改變s的數據類型

比較運算符(關系運算符)

== > < >= <= instanceof

ps:== 和=的區別
進行比較運算操作以後,返回一個boolean類型的值
if(i>1&&i<10){} //ok
不能寫成if(1<i<10){}
邏輯運算符(運算符的兩端是boolean值)
& && | || ^(亦或,相同取零,不同取一) !
ps:區分&和&&的區別,以及|與||的區別
我們使用的時候,選擇&&,||

位運算符(兩端是數值類型的數據)
<< >> >>> & | ^ ~(取反)
ps:1)這裏左移,右移,移動的是二進制的補碼,最後結果根據二進制的變化而定,
2)>>,右移,左邊以該數的符號位進行補充,右邊移除的部分被拋棄
3)>>>也表示右移,但是左邊無符號右移

[例子]1.如何轉換m=12和n=5的值
2.將60轉換為16進制的輸出

三元運算符
(條件表達式)?表達式1:表達式2;
1)既然是運算符,一定會返回一個結果,並且結果的數據類型與表達式1,2類型一致
2)表達式1與表達式2的數據類型一致
3)使用三元運算符的,一定可以轉換為if-else,反之不一定
例子:獲取兩個數的較大值;獲取三個數的最大值.

java學習基礎總結