運算子 | 功能 | 範例 |
---|---|---|
+ | 加 | a + b |
- | 減 | a - b |
* | 乘 | a * b |
/ | 除 | a / b |
% | 取餘數 | a % b |
基本資料型態 (primitive data type) 中的算術型態都可以做算術運算,以下為整數型態 (integer type) 做算術運算的例子
class ArithIntDemo { public static void main(String[] args) { int a, b, c; a = 8; b = 3; c = a + b; System.out.println("a + b = " + c); c = a - b; System.out.println("a - b = " + c); c = a * b; System.out.println("a * b = " + c); c = a / b; System.out.println("a / b = " + c); c = a % b; System.out.println("a % b = " + c); } } /* 《程式語言教學誌》的範例程式 http://pydoing.blogspot.com/ 檔名:ArithIntDemo.java 功能:示範算術運算子的使用 作者:張凱慶 時間:西元 2010 年 10 月 */
編譯後執行,結果如下
注意程式的第 16 行
c = a / b;
由於是利用整數型態進行計算,所以得到的結果,程式印出的第 4 行也會是整數,這被稱為整數除法 (integer division) 。
以下為浮點數型態 (floating-point type) 做算術運算的例子,請留意,浮點數型態不能做取餘數的計算
class ArithFloatDemo { public static void main(String[] args) { double a, b, c; a = 8.3; b = 2.2; c = a + b; System.out.println("a + b = " + c); c = a - b; System.out.println("a - b = " + c); c = a * b; System.out.println("a * b = " + c); c = a / b; System.out.println("a / b = " + c); c = a % b; System.out.println("a % b = " + c); } } /* 《程式語言教學誌》的範例程式 http://pydoing.blogspot.com/ 檔名:ArithFloatDemo.java 功能:示範算術運算子的使用 作者:張凱慶 時間:西元 2010 年 10 月 */
編譯後執行,結果如下
Java 的物件導向 (object-oriended) 的程式設計模式可以使運算子多載 (operator overloading) 。這是說相同的運算子在不同資料型態可以設定成不同的用途,例如,加法運算子 (additive operator) 在字串用於字串的連結 (concatenation) ,如下範例
class ArithStringDemo { public static void main(String[] args) { String a = "Hello"; String b = "world"; String c = "!"; String d = " "; String e; e = a + b; System.out.println(e); e = a + d + b; System.out.println(e); e = a + d + b + c; System.out.println(e); } } /* 《程式語言教學誌》的範例程式 http://pydoing.blogspot.com/ 檔名:ArithStingDemo.java 功能:示範算術運算子的多載 作者:張凱慶 時間:西元 2010 年 10 月 */
編譯後執行,結果如下
中英文術語對照 | |
---|---|
算術運算 | arithmetic operation |
運算元 | operand |
算術運算子 | arithmetic operator |
基本資料型態 | primitive data type |
整數型態 | integer type |
整數除法 | integer division |
浮點數型態 | floating-point type |
物件導向 | object-oriended |
運算子多載 | operator overloading |
加法運算子 | additive operator |
連結 | concatenation |
參考資料
http://download.oracle.com/javase/tutorial/java/nutsandbolts/op1.html
http://java.sun.com/docs/books/jls/third_edition/html/expressions.html
http://download.oracle.com/javase/tutorial/java/nutsandbolts/op1.html
http://java.sun.com/docs/books/jls/third_edition/html/expressions.html
沒有留言:
張貼留言