Java基礎語法02(數據類型轉換、運算符、方法入門)
1.數據類型轉換
Java程序中要求參與的計算的數據,必須要保證數據類型的一致性,如果數據類型不一致將發生類型的轉換。
1.1自動轉換
一個 int 類型變量和一個 byte 類型變量進行加法運算, 結果會是什麼數據類型?
int i = 1;
byte b = 2;
運算結果,變量的類型將是 int 類型,這就是出現了數據類型的自動類型轉換現象。
自動轉換規則:
將取值範圍小的類型自動提升爲取值範圍大的類型 。
因此可以得出:
byte、short、char‐‐>int‐‐>long‐‐>float‐‐>double
1.2 強制轉換
將取值範圍大的類型強制轉換成 取值範圍小的類型
直接將取值範圍大的類型賦值給取值範圍小的類型會發生什麼?
int i = 1.5; // 產生編譯失敗,無法賦值。
強制轉換方法大類型賦值小類型:
數據類型 變量名 = (數據類型)被轉數據值;
double類型數據強制轉成int類型,直接去掉小數點。
int i = (int)1.5;
注意:
浮點轉成整數,直接取消小數點,可能造成數據損失精度。
int 強制轉成 short 砍掉2個字節,可能造成數據丟失。
2.運算符
2.1算數運算符
+ | 加法運算,字符串連接運算 |
---|---|
- | 減法運算 |
* | 乘法運算 |
/ | 除法運算 |
% | 取模運算,兩個數字相除取餘數 |
++ 、 – | 自增自減運算 |
混合運算特例:
- 和其他變量放在一起, 前++ 和 後++ 就產生了不同。
- 變量 前++ :變量a自己加1,將加1後的結果賦值給b,也就是說a先計算。a和b的結果都是2。
public static void main(String[] args) {
int a = 1;
int b = ++a;
System.out.println(a);//計算結果是2
System.out.println(b);//計算結果是2
}
- 變量 後++ :變量a先把自己的值1,賦值給變量b,此時變量b的值就是1,變量a自己再加1。a的結果是2,b 的結果是1。
public static void main(String[] args) {
int a = 1;
int b = a++;
System.out.println(a);//計算結果是2
System.out.println(b);//計算結果是1
}
- “+”符號在字符串中的操作:
“+” 符號在遇到字符串的時候,表示連接、拼接的含義。 “a”+"b"的結果是“ab”
2.2賦值運算符
將符號右邊的值,賦給左邊的變量。
= | 等於號 |
---|---|
+= | 加等於 |
-= | 減等於 |
*= | 乘等於 |
/= | 除等於 |
%= | 取模等 |
2.3比較運算符
兩個數據之間進行比較的運算,運算結果都是布爾值 true 或者 false 。
== | 比較符號兩邊數據是否相等,相等結果是true。 |
---|---|
< | 比較符號左邊的數據是否小於右邊的數據,如果小於結果是true。 |
> | 比較符號左邊的數據是否大於右邊的數據,如果大於結果是true。 |
<= | 比較符號左邊的數據是否小於或者等於右邊的數據,如果小於結果是true。 |
>= | 比較符號左邊的數據是否大於或者等於右邊的數據,如果小於結果是true。 |
!= | 不等於符號 ,如果符號兩邊的數據不相等,結果是true。 |
2.4邏輯運算符
是用來連接兩個布爾類型結果的運算符,運算結果都是布爾值 true 或者 false
2.5 三元運算符
- 三元運算符格式:
數據類型 變量名 = 布爾類型表達式?結果1:結果2
- 三元運算符計算方式:
- 布爾類型表達式結果是true,三元運算符整體結果爲結果1,賦值給變量。
- 布爾類型表達式結果是false,三元運算符整體結果爲結果2,賦值給變量。
public static void main(String[] args) {
int i = (1==2 ? 100 : 200);
System.out.println(i);//200
int j = (3<=4 ? 500 : 600);
System.out.println(j);//500
}
3.方法入門
我們在學習運算符的時候,都爲每個運算符單獨的創建一個新的類和main方法,我們會發現這樣編寫代碼非常的繁瑣,而且 重複的代碼過多。能否避免這些重複的代碼呢,就需要使用方法來實現。
- 方法:就是將一個功能抽取出來,把代碼單獨定義在一個大括號內,形成一個單獨的功能。 當我們需要這個功能的時候,就可以去調用。這樣即實現了代碼的複用性,也解決了代碼冗餘的現象。
3.2 方法的定義
定義格式:
修飾符 返回值類型 方法名 (參數列表){
代碼…
return ;
}
- 定義格式解釋:
-
修飾符: 目前固定寫法 public static 。
-
返回值類型: 目前固定寫法 void ,其他返回值類型在後面的課程講解。
-
方法名:爲我們定義的方法起名,滿足標識符的規範,用來調用方法。
-
參數列表: 目前無參數, 帶有參數的方法在後面的課程講解。
-
return:方法結束。因爲返回值類型是void,方法大括號內的return可以不寫。
-
方法舉例:
public static void methodName() {
System.out.println("這是一個方法");
}
3.3 方法的調用
方法在定義完畢後,方法不會自己運行,必須被調用才能執行,我們可以在主方法main中來調用我們自己定義好的方法。在
主方法中,直接寫要調用的方法名字就可以調用了。
public static void main(String[] args) {
//調用定義的方法
method method();
}
//定義方法,被main方法調用
public static void method() {
System.out.println("自己定義的方法,需要被main調用運行");
}
3.4 注意事項
方法定義注意事項:
方法必須定義在一類中方法外
方法不能定義在另一個方法的裏面
public class Demo {
public static void main(String[] args){
}
//正確寫法,類中,main方法外面可以定義方法
public static void method(){}
}
public class Demo {
public static void main(String[] args){
//錯誤寫法,一個方法不能定義在另一方法內部
public static void method(){}
}
}
聲明:本人學習的是黑馬程序員視頻課程!!!講的真得很詳細