Web | Coding | Blog | SOHO

[Java]第四章:運算子、運算式與敘述

程式是由許多敘述組成的,而敘述的基本單位是運算元與運算子。
透過本章學習如何進行運算式之資料型態的轉換。

參考書籍:Java 7 教學手冊


認識運算式

  • 運算式由運算元(operand)與運算子(operator)組成
  • 運算元可以是變數或是常數
  • 運算子就是數學上的運算符號
  • 如「+」、「-」、「*」、「/」等

 

01

根據運算子所使用的類別可分為:設定、算數、關係、邏輯、條件、逗號以及遞增與遞減運算子。

將變數設值可使用設定運算子:

等號(=)並不是「等於」,而是「設定」

02


一元運算子

一元運算子只需要一個運算元

+6; // 表示正6
~a; // 表示取a的1補數
x=-y; // 表示負y的值設定給變數x存放
!a; // a的NOT運算,若a為0,則!a為1,若a不為0,則!a為0

使用!運算元必須為 boolean 型態

一元運算子 意義
+ 正號
負號
! NOT 否定
~ 取 1 的補數

算術運算子

算術運算子 意義
+ 加法
減法
* 乘法
/ 除法
% 取餘數

在除法的部分,要注意資料型態的變化唷!


關係運算子與if敘述

如果括號中的條件判斷成立,就會執行後面的敘述;若是條件判斷不成立時,則後面的敘述就不會執行。

關係運算子 意義
> 大於
< 小於
>= 大於等於
<= 小於等於
== 等於
!= 不等於

遞增與遞減運算子

善用遞增與遞減運算子可提高城市的簡潔程度。

遞增與遞減運算子 意義
++ 遞增,變數值加一
遞減,變數值減一

a++ 會先執行整個敘述後再將a的值加 1

++a則先把a的值加 1 後再執行整個敘述


邏輯運算子

&& :運算子前後的兩個運算元之傳回直接為真,運算的結果才會為真。

|| :運算子前後只要一個為真,運算的結果就會為真。

a>0 && b>0 // 兩個運算元皆為真,運算結果才為真
a>0 || b>0 // 兩個運算元只要一個為真,運算結果就為真
邏輯運算子 意義
&& AND 且
|| OR 或

 

AND :兩者都要為真,運算結果才會為真。

AND T F
T T F
F F F

 

OR :其中一個為真,運算結果就為真。

OR T F
T T T
F T F

 


括號運算子

( )  可以提高括號內運算式的優先處理順序

 

優先順序數字愈小,表示優先順序愈高。

12

以下範例:

13


運算式

運算式可以由數值、變數或是其他運算元與運算子所組合而成。

運算子 用法 說明 意義
+= a+=b a+b 的值放到 a a=a+b
-= a-=b a-b 的值放到 a a=a-b
*= a*=b a*b 的值放到 a a=a*b
/= a/=b a/b 的值放到 a a=a/b
%= a%=b a%b 的值放到 a a=a%b

運算式的型態轉換

允許資料型態暫時轉換成其他型態的情況發生,以不流失資料為前提,即可做不同型態轉換。

根據以下規則來處理型態的轉換:

  • 佔用位元組較少的型態轉換成位元組較多的型態
  • 字元型態會轉換成short型態(字元會取其unicode碼)
  • short型態(2 bytes)遇上int型態(4 bytes),會轉換成int型態
  • int型態會轉換成float型態
  • 運算式中若某個運算元的型態為double,則另一個運算元也會 轉換成double型態
  • 布林型態不能轉換成其它的型態

本章就到此結束了,這次無帶入相關的範例實作,並以大量的表格圖文呈現。站長會另尋時間發一篇第四章的範例文章。

下一章是選擇性敘述與迴圈。

Java 學習日誌 (點此閱讀所有 Java日誌)
有任何問題也歡迎在底下留言,或到fb粉絲專頁發訊息給站長一起討論。


如果您喜歡本站的文章,也歡迎將文章分享轉貼並註明出處;
另外還未按讚粉絲專頁的朋友,也可以動動手點擊追蹤最新的文章唷:

Comments

comments

如果您喜歡本站的文章,也歡迎將文章分享轉貼並註明出處;另外還未按讚粉絲專頁的朋友,也可以動動手點擊追蹤最新的文章唷:


© 2017 4xCode™ | Design:SC 站長