關鍵字
Java 語言預先定義好的,有指定意義的標識符,組成程序的基本元素。
1、abstract 表示抽象
2、boolean 基本數據類型
3、break 跳出循環
4、byte 基本數據類型
5、case 與 switch 搭配使用
6、catch 與 try 搭配使用,表示捕獲異常
7、char 基本數據類型
8、class 表示一個類
9、continue 跳出循環
10、do 與 while 搭配使用,表示循環
11、double 基本數據類型
12、else 與 if 搭配,流程控制
13、enum 枚舉類型
14、extends 繼承
15、final 修飾常量
16、float 基本數據類型
17、if 流程控制
18、implements 實現接口
19、import 引入某個類
20、int 基本數據類型
21、interface 表示接口
22、long 基本數據類型
23、native 表示本地方法
24、new 創建對象
25、package 表示包
26、private 私有
27、public 共有
28、return 返回值
29、short 基本數據類型
30、static 表示靜態
31、super 表示父類
32、switch 與 case 搭配使用
33、synchronized 線程同步
34、this 表示當前實例
35、throw 拋出異常
36、throws 方法中主動拋出異常
37、try 與 catch 搭配使用
38、void 表示方法沒有返回值
39、volatile 保證線程讀取到最新值
40、while 表示循環
變量
-
數據類型
-
變量名
-
變量值
基本數據類型+引用數據類型
數值類型:byte 1個字節、int 4個字節、short 2個字節、long 8個字節、float 4個字節、double 8個字節
非數值類型:char 2個字節、boolean 1/8個字節
//打印類型二進制位數大小 大小除於8得到相應的位數 如byte
System.out.println("byte 二進制位數:" + byte.SIZE);
在計算機中,數據只用0和1還種表現形式,一個0或者1佔一個“位”,而系統中規定8個位爲一個字節。
計算機中大小的衡量
K是千 M是兆 G是吉咖 T是太拉 8bit(位)=1Byte(字節) 1024Byte(字節)=1KB
1024KB=1MB 1024MB=1GB 1024GB=1TB
數據類型轉換
-
自動轉換
Java 可以自動對某些數據類型進行自動轉換。
規則:只能由低字節向高字節進行轉換,反之則不行。
byte->short->int->long->float->double
-
強制類型轉換
Java 無法自動轉換的數據類型,開發者可以通過強制手段進行轉換。
一般來講強制類型轉換可能會造成精度損失。
double num = 10.0;
int num2 = (int)num;
運算符
-
賦值運算符
數據類型 變量名 = 數值/變量;
//1、創建變量用來記錄張三的體重
double weight1 = 70.5;
//2、創建變量表示李四的體重
double weight2 = 60.5;
System.out.println("交換之前:張三的體重是"+weight1+",李四的體重是"+weight2);
System.out.println("進行交換");
double temp = weight1;
weight1 = weight2;
weight2 = temp;
System.out.println("交換之後:張三的體重是"+weight1+",李四的體重是"+weight2);
weight2 = (weight1+weight2)-(weight1=weight2)
-
算術運算符
-
基本算術運算符
+、-、*、/、%、++、--
變量1 + 變量2
變量1 - 變量2
變量1 * 變量2
變量1 / 變量2
變量1 % 變量2
變量++、++變量
變量--、--變量
變量++:先操作,再運算。
++變量:先運算,再操作。
-
複合算術運算符
+=、-=、*=、/=、%=
變量1 += 變量2:先求出變量1和變量2之和,再把計算結果賦值給變量1,變量1 = 變量1 + 變量2
-
-
關係運算符
==、!=、>、<、>=、<=
-
邏輯運算符
邏輯運算符只能用於 boolean 類型的數據運算,判斷 boolean 數據之間的邏輯關係,與、或、非。
&(與)、|(或)、!(非)、&&(短路與)、||(短路或)
參與邏輯運算符的變量都是 boolean 的
變量1 & 變量2:只有當變量 1 和變量 2 都爲 true,結果爲 true,否則爲 false。
變量1 | 變量2:變量 1 和變量 2 只要有一個爲 true,結果爲 true,否則爲 false。
!變量1:若變量 1 爲 true,結果爲 false,若變量 1 爲 false,結果爲 true。
變量1 && 變量2:只有當變量 1 和變量 2 都爲 true,結果爲 true,否則爲 false。
變量1 || 變量2:變量 1 和變量 2 只要有一個爲 true,結果爲 true,否則爲 false。
//&(與)、|(或)、&&(短路與)、||(短路或)的例子學習 執行效率上的差異
int num1 = 10;
int num2 = 11;
System.out.println((++num1==num2)||(num1++==num2));
System.out.println(num1);
int num1 = 10;
int num2 = 11;
System.out.println((++num1==num2)|(num1++==num2));
System.out.println(num1);
int num1 = 10;
int num2 = 11;
System.out.println((num1++==num2)&(++num1==num2));
System.out.println(num1);
int num1 = 10;
int num2 = 11;
System.out.println((num1++==num2)&&(++num1==num2));
System.out.println(num1);
條件運算符
三元運算符、三目運算符、三元表達式
根據不同的條件給同一個變量賦不同的值,變量 = 條件?值1:值2.
位運算符
-
十進制和二進制的轉換
十進制轉二進制:目標數除以2,若能除盡,該位記做0,若除不盡,該位記做1,再對商繼續除以2,以此類推,直到商爲0,然後把每一位的結果反序組合就是對應的二進制。
10:1010
17:10001
二進制轉十進制:從目標數的最後側起,本位的數值乘以本位的權重,權重就是2的第幾位的位數減一次方,將每一位的值進行相加,得到的結果就是對應的十進制。
位運算符:&(按位與)、|(按位或)、^(按位異或)、<<(左移)、>>(右移)
變量1 & 變量2:先把變量 1 和變量 2 轉爲二進制,每一位的數字一一對應,進行比較判斷,若都爲 1,則該位記做 1,否則記做 0。
變量1 | 變量2:先把變量 1 和變量 2 轉爲二進制,每一位的數字一一對應,進行比較判斷,只要有一個爲 1,則該位記做 1,否則記做 0。
變量1 ^ 變量2:先把變量 1 和變量 2 轉爲二進制,每一位的數字一一對應,進行比較判斷,相同記做 0,不同記做 1。
變量1 << 變量2:變量1乘以2的變量2次方
2 << 3 : 2 * 8 = 16
變量1 >> 變量2:變量1除以2的變量2次方
2 >> 3:2/8 = 0
運算符的優先級
!>算術運算符>關係運算符>邏輯運算符(&&>||)
流程控制
-
if else
用來判斷某個條件是否成立,然後執行不同的邏輯運算。
基本語法:
if(判斷條件){ //條件成立的代碼 }else{ //條件不成立的代碼 }
-
多重 if
173 M
173~178 L
178 XL
-
if 後面必須跟條件
-
else 後面不能跟條件
-
else 後面可以根據{},也可以跟 if