四.數據類型轉換
類型轉換是將一個值從一種數據類型轉換成另一種數據類型的過程,例如"123"可以轉換為123,還可以將任意基本數據類型,轉換為String類型。
數據類型轉換分為兩種,即隱式與顯示,如果低精度向高精度轉換數據類型,則永遠不會丟失,並且總是成功,就像小杯子裡面的水倒入大杯子裡面,永遠不會溢出。如果反過來,高精度轉換低精度數據類型,則必然丟丟失數據,甚至會類型轉換異常。
1.隱式轉換
低級類型向高級類型的轉換,系統自動執行,程序員無需任何操作,這種轉換稱為隱式轉換,也叫自動轉換,基本數據類型會涉及數據轉換,按照從”低“到“高”的順序為:byte
2.顯示轉換
當把高精度變量賦值給低精度變量時,必須使用顯示轉換,也叫強制類型轉換,當執行顯示轉換的時候,可能會導致精度丟失。
語法舉例說明:
如果需要把數值賦給變量的時候,不可以超過這些變類型的取值範圍,否則必須進行顯示轉換,例如:
//byte的取值範圍是-128~127,如果需要把129賦值給byte,則需要顯示轉換 byte b = (byte)129;
五.運算符
1.賦值運算符
賦值運算符用等號“=”表示,他是一個二元運算符,其功能是將右邊操作數的值賦予作坊,例如:
int a = 100;
double b = 15.23;
2.算術運算符
Java中算數運算符主要有 +(加號),-(減號),*(乘號),/(整除號),%(取餘數),這些都是二元運算符。
其中比較特殊的+-,還可以做正負符號,例如+5,-7.
模擬計算器運算功能,輸入兩個數字,分別使用五種運算符進行運算,代碼如下:
注:+ 運算符也有拼接字符串的功能。
3.自增自減運算符
自增,自減運算符是單目運算符,可以放在變量前,也可以放在變量後。使目標變量+1或者-1,語法如下:
a++;//先保存a的值,在進行+1運算
++a;//先進行+1運算,在保存a的值
a--;//先保存a的值,在進行-1運算
--a;//先進行-1運算,在保存a的值
變量實現自動增減,代碼如下:
4.關係運算符
關係運算符屬於二元運算符,用來判斷一個操作數與另外一個操作數之間的關係。關係運算符的結果都是布爾類型。
== 等於 2==3 false < 小於 2<3 true > 大於 2>3 false <= 小於或等於 5<=6 true >= 大於或等於 7>=7 true != 不等於 2!=3 true
實例代碼如下:
5.邏輯運算符
邏輯運算符是對真和假這兩種邏輯進行運算,運算結果仍然是一個邏輯值,邏輯運算符包括&&(邏輯與),||(邏輯或)和 !(邏輯非)。邏輯運算符計算的值必須是boolean類型。
%%:二者必須同時為正確,結果正確。
||:二者滿足一個正確即可,結果正確。
邏輯運算符和關係運算符進行統一運算,代碼如下:
6.位運算符
位運算符操作類型為整形,可以有符號,可以沒有。位運算符可以分為兩大類:位邏輯運算符和位移運算符。
//位邏輯運算符 & 與 | 或 ~ 取反 -------------------------------------- //位移運算符 ^ 異或 << 左位移 >> 右位移 >>> 無符號右位移
使用位邏輯運算符進行運算,代碼如下:
使用位移運算符進行密碼加密,代碼如下:
7.複合賦值運算符
和其他主流編程語言一樣,Java也有複合賦值運算符,也就是將賦值運算符與其他運算符合並使用形成一個新的運算符,從而便捷實現兩種運算符的效果。如下所示:
+= 相加結果賦值左側 -= 相減結果賦值左側 *= 相乘結果賦值左側 /= 相除結果賦值左側 %= 取餘結果賦值左側 &= 與結果賦值左側 |= 或結果賦值左側 ^= 異或結果賦值左側 <<= 左移結果賦值左側 >>= 右移結果賦值左側 >>>= 無符號右移結果賦值左側
(1)低精度類型自增,例如:
byte a = 1; a = a+1;//無法將int類型轉換成byte型 ---------------------- byte a = 1; a += 1;//運算成功
(2)不規則的多值相加。
a = (2+3-4)*92/6 //如果換算成複合賦值就會特比繁瑣。
8.三元運算符
三元運算符使用格式為:
條件表達式 ? 值1 : 值2
若條件表達式為 true,則結果為值1,否則結果為值2,等同於if語句
boolean a; if(條件表達式){ 值1; }else{ 值2; }
9.運算符優先級
Java中表達式就是用運算符連接起來的,計算會存在優先級,不同的優先級決定了不同的運算結果,通常優先級判定由高到低的順序為:增量減量運算,算數運算,比較運算,邏輯運算及賦值運算。
想要修改優先級,使用()框住即可,系統判定優先運算。
以上就是我們Java語言基礎的第一章第二小節,感謝讀者翻閱,辛苦小夥伴點個贊哦