JAVA基礎總結2,java基礎總結
2.1 關鍵字
常用的關鍵字主要包括如下:
2.2 標識符
簡單而言標識符它其實就是用於標識某些東西的符號。
2.3 注釋的應用
注釋說明
注釋的作用:
注釋的應用:
2.4 常量和變數
常量的定義與分類
進位的由來
注意:byte 是1個位元組 = 8個二進位位, 1K = 1024。
進位的基本轉換介紹
負數的進位
變數的介紹
JAVA的資料類型主要包含參考型別和基礎資料型別 (Elementary Data Type),其中有8種基礎資料型別 (Elementary Data Type)
變數的基本示範
型別提升與強制轉換說明
結果分別是97與98,其實就是二進位和生活中文字對應的關係表,即ASCII編碼錶,反之:System.out.println(char('a' + 1)), 輸出結果等於b, 其中b對應的編碼錶裡面的數字是98。
類型運算細節
1 class DemoTest20171015 2 { 3 public static void main(String[] args) 4 { 5 // int x = 3; 6 // byte b = 5; 7 // x = x + b; 8 // System.out.println("x=:" + x); 9 10 // byte b = 3;11 // b = (byte)(b + 200);12 // System.out.println("b=:" + b); //輸出結果為-53, 強制類型轉換13 14 // System.out.println('你' + 0); //輸出結果為20320,即unicode國際編碼錶對應的關係15 16 byte b = 4;17 // b = 3+7;18 // System.out.println("b=:" + b); //輸出結果為1019 // byte b1 = 3;20 // byte b2 = 7;21 // b = b1 + b2;22 // System.out.println("b=:" + b); //編譯報錯,說int轉換byte可能損失精度,原因是b1和b2是變數,其中它們的值是變化的,無法判斷;23 //而上面b = 3+7是屬於固定的常量,可以判斷,所以輸出結果等於10.24 25 int x;26 int x1 = 10;27 int x2 = 98;28 x = x1 + x2;29 System.out.println("x=:" + x); //輸出結果為108,因為x1和x2預設都是int類型,所以最終運算結果還是為整型,即int類型。30 31 32 }33 }
2.5 運算子
JAVA中主要包含以下6種運算子:
算術運算子
說明:算術運算子主要包含:+ - * / %(取餘,模運算) ++(自增:在原有資料基礎之上+1,再賦給原有資料) --
練習:
1 int x = 6370; 2 3 x = x / 1000 * 1000 4 5 System.out.println(x); // 輸出結果為6000 6 7 System.out.println(5 % 2); //輸出結果為1 8 9 System.out.println(2 % 5); //輸出結果為210 11 System.out.println(3 % 5); //輸出結果為312 13 System.out.println(-5 % 2); //輸出結果為-114 15 System.out.println(5%-2); //輸出結果為116 17 System.out.println(5%5); //輸出結果為018 19 注意:任何數字和字串相串連,其結果為字串,如:System.out.println("ab" + 5 + 5); //輸出結果為ab5520 21 int a = 3;22 23 a++; //a= a+1;24 25 System.out.println(a); //輸出結果為426 27 int a =3,b;28 29 b = a++;30 31 System.out.println("a=" + a + ", b=" + b); //輸出結果a=4, b=332 33 int a =3,b;34 35 b = ++a;36 37 System.out.println("a=" + a + ", b=" + b); //輸出結果a=4, b=438 39 int i = 3;40 41 i = i++;42 43 System.out.println(i) ; //輸出結果為3
賦值運算子
說明:主要包含: = += -= /= *= %=
1 int a = 4;2 3 a+=2;//a = a + 2;4 5 short s = 3;6 7 s+= 4;//輸出結果為78 9 // s = s+4; //運行編譯報錯,有可能損失精度,原因是沒有做強轉,而s+=4可以自動做轉換
比較子
邏輯運算子
思考:邏輯運算子有什麼用呢?
用於串連兩個boolean類型的運算式,如:2<x < 5, x > 2 & x < 5;
&符號的運算特點:
true & true = true;
true & false = false;
false & true = false;
false & false = false;
&符號的運算規律:
&運算子兩邊只有一個是false,結果肯定是false;只有兩邊都是true,結果才是true
|符號的運算特點:
true | true = true
false | true = true
true | false = true
false | false = false
|符號的運算規律
|運算子 的兩邊只要有一個是true,結果肯定是true;只有兩邊都是false,結果才是false
^:異或符號的運算特點:
true ^ true = false
false ^ true = true
true ^ false = true
false ^ false = false
^符號的運算規律:
^符號的兩邊結果如果相同,結果是false;兩邊的結果不同,結果是true。
!:非運算子,判斷事物的另一面
!true = false;
!false = true;
!!true = true;
&&符號的運算特點:
和&運算的結果是一樣的,但是運算過程有點小區別。
&符號無論左邊的運算結果是什麼,右邊都參與運算;&&當左邊為false時,右邊不參與運算。
||符號的運算特點:
和|運算結果是一樣的,但是運算過程有點小區別。
|符號無論左邊的運算結果是什麼,右邊都參與運算;||當左邊是true時,右邊不參與運算。
位元運算符
<< 相當於乘以2的倍數
>> 相當於除以2的倍數
移n位,就是對乘以或者除以2的n次冪。
圖解
三元運算子
定義:簡單而言就是三個元素參與運算的符號。
示範:
1 class OperateDemo 2 { 3 public static void main(String args[]) 4 { 5 int x = 0, y; 6 y = (x > 1)?100:200; 7 System.out.println(y); // 輸出結果為200 8 9 //擷取兩個整數中的較大的整數10 int a,b;11 int max = (a>b)?a:b;12 13 //擷取三個整數中的較大的整數14 int o,p,q;15 int temp = (o>p)?o:p;16 int max2 = (temp>q)?temp:q;17 }18 19 }
練習:
1、 直接操作二進位位,或使用移位元運算(2<<3)
2、
1 class OperateTest 2 { 3 public static void main(String[] args) 4 { 5 //最有效率的方式算出2乘以8等於幾 6 System.out.println(2<<3); 7 8 //對兩個整型變數的值進行互換(不需要第三方變數) 9 int a = 3, b = 5;10 System.out.println("a="+a+",b="+b);11 12 //開發時使用,使用第三方變數的形式,因為閱讀性強13 // int c;14 // c = a;15 // a = b;16 // b = c;17 // System.out.println("a="+a+",b="+b);18 19 20 //這種方式最好不要用,如果兩個整數的數值過大,會超出int範圍,會強制轉換,數值會變化。21 // a = a+b;//a = 3+5 = 8;22 // b = a-b;//b = 3+5-5 = 3;23 // a = a-b;//a = 3+5-3 = 5;24 // System.out.println("a="+a+",b="+b);25 26 //面試時使用27 a = a^b;//a = 3^5;28 b = a^b;//b = (3^5)^5; b=3;29 a = a^b;//a = (3^5)^3; a=5;30 System.out.println("a="+a+",b="+b);31 32 }33 }
2.6 語句
2.7 函數
2.8 數組