Java入門
1、算術運算子
實現對兩個數的運算,程式輸出效果為:
請輸入第一個整數:
25
請輸入第二個整數:
8
兩數相加的結果為:33
兩數相減的結果為:17
兩數相乘的結果為:200
兩數相除的結果為:3
兩數取餘數的結果為:1
以下是Java程式碼:
public class Calculate{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("請輸入第一個整數:");
int a = sc.nextInt();
System.out.println("請輸入第二個整數:");
int b = sc.nextInt();
System.out.println("兩數相加的結果為:" + (a + b));
System.out.println("兩數相減的結果為:" + (a - b));
System.out.println("兩數相乘的結果為:" + (a * b));
System.out.println("兩數相除的結果為:" + (a / b));
System.out.println("兩數取餘數的結果為:" + (a % b));
}
}
Java中常用的算術運算子:
算術運算子 | 名稱 | 舉例 |
---|---|---|
+ | 加法 | 5+12=17 |
- | 減法 | 25-10=15 |
* | 乘法 | 3*8=24 |
/ | 除法 | 24/6=4 |
% | 求餘 | 24%7=3 |
++ | 自增1 | int i=5;i++;++i; |
-- | 自減1 | int i=5;i--;--i; |
++i 和 i++ 是不同的,例如:
int i = 1;
int j = ++i;
int k = i++;
System.out.println("j:"+j);
System.out.println("k:"+k);
輸出的結果是:
j:2
k:2
++放在前面表示這個自增運算有更高的優先順序,會先運算i自增1變為2,再將值交給j,而++放在後面,該自增運算處於低優先順序,i的值2交給k之後,再進行++變為3。
對於除法:
如果進行運算的兩個數是整型,則運算結果是整型,就算會產生小數部分,小數部分也會被直接抹除(不會四捨五入,直接扔掉所有)。
如果進行運算的兩個數是浮點型(float或者double),就能夠產生正常的小數部分。
對於取模運算:
即求整除後剩餘的值,七個蘋果分給三個小朋友,不夠分的留下,餘數是多少?
\(7\div3=2\dots1\),所以取餘數為1。
2、關係運算子
使用關係運算子實現判斷兩數的關係:
請輸入一個數a:
20
請輸入一個數b:
34
a==b=false
a!=b=true
a>b=false
a<b=true
b>=a=true
b<=a=false
以下是Java程式碼:
public class Calculate{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("請輸入一個數a:");
int a = sc.nextInt();
System.out.println("請輸入一個數b:");
int b = sc.nextInt();
System.out.println("a==b=" + (a==b));
System.out.println("a!=b=" + (a!=b));
System.out.println("a>b=" + (a>b));
System.out.println("a<b=" + (a<b));
System.out.println("a>=b=" + (a>=b));
System.out.println("a<=b=" + (a<=b));
}
}
常見的關係運算子,設A=10,B=20:
運算子 | 描述 | 例子 |
---|---|---|
== | 檢查如果兩個運算元的值是否相等,如果相等則返回真 | \(A==B\)為假 |
!= | 檢查兩個運算元的值是否相等,如果不相等則返回真 | \(A!=B\)為真 |
> | 檢查左運算元的值是否大於右運算元的值,如果是則返回真 | \(A>B\)為假 |
< | 檢查左運算元的值是否小於右運算元的值,如果是則返回真 | \(A<B\)為真 |
>= | 檢查左運算元的值是否大於或等於右運算元的值,如果是則返回真 | \(A\geq B\)為假 |
<= | 檢查左運算元的值是否小於或等於右運算元的值,如果是則返回真 | \(A\leq B\)為真 |
3、邏輯運算子
邏輯運算子用於測試兩個運算元之間的邏輯關係,兩個運算元必須是布林型別
邏輯運算子 | 名稱 | 舉例 | 結果 |
---|---|---|---|
&& | 與 | a&&b | 如果a和b都為true則返回true |
|| | 或 | a||b | 如果a和b有一個為true,則結果true,a和b都為false則返回false |
! | 非 | !a | 如果a為false,則返回true,即取反 |
^ | 異或 | a^b | 如果a和b有且只有一個為true,則返回true |
4、三元運算子
輸入一個年份,判斷是否為閏年。
Java程式碼:
public class judgeLeapYear{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int year = sc.nextInt();
return (year % 400 == 0)||((year % 4 == 0) && (year % 100 != 0)) ? true : false;
}
}
三元運算子:
條件表示式 ? 條件為真返回的結果 : 條件為假返回的結果
例如上題,條件表示式為:(year % 400 == 0)||((year % 4 == 0) && (year % 100 != 0))
判斷了:
1.年份能被400整除。
2.年份能被4整除,但不能被100整除。
將這兩個條件用或運算子連線,如果結果為真則返回true,如果為假則返回false,這樣就能判斷某個年份是不是閏年了。
5、運算子的優先順序
優先順序 | 運算子 |
---|---|
1 | () |
2 | ! +(正) -(負) ++ -- |
3 | * / % |
4 | +(加) -(減) |
5 | < <= > >= |
6 | == != |
7 | ^ |
8 | && |
9 | || |
10 | ? : |
11 | = += -= *= /= %= |