java基礎重點講解,看了還不會找我(三)
###03.01_Java語言基礎(邏輯運算子的基本用法)(掌握)
* A:邏輯運算子有哪些
* &,|,^,!
* &&,||
* B:案例演示
* 邏輯運算子的基本用法
* 注意事項:
* a:邏輯運算子一般用於連線boolean型別的表示式或者值。
* b:表示式:就是用運算子把常量或者變數連線起來的符合java語法的式子。
* 算術表示式:a + b
* 比較表示式:a == b(條件表示式)
* C:結論:
* &邏輯與:有false則false。
* |邏輯或:有true則true。
* ^邏輯異或:相同為false,不同為true。
* !邏輯非:非false則true,非true則false。
* 特點:偶數個不改變本身。
###03.02_Java語言基礎(邏輯運算子&&和&的區別)(掌握)
* A:案例演示
* &&和&的區別?
* a:最終結果一樣。
* b:&&具有短路效果。左邊是false,右邊不執行。
* &是無論左邊是false還是true,右邊都會執行
* B:同理||和|的區別?(學生自學)
* C:開發中常用誰?
* &&,||,!
###03.03_Java語言基礎(位運算子的基本用法1)(瞭解)
* A:位運算子有哪些
* &,|,^,~ ,>>,>>>,<<
* B:案例演示
* 位運算子的基本用法1
* &,|,^,~ 的用法
* &:有0則0
* |:有1則1
* ^:相同則0,不同則1
* ~:按位取反
###03.04_Java語言基礎(位異或運算子的特點及面試題)(掌握)
* A:案例演示
* 位異或運算子的特點
* ^的特點:一個數據對另一個數據位異或兩次,該數本身不變。
* B:面試題:
* 請自己實現兩個整數變數的交換
* 注意:以後講課的過程中,我沒有明確指定資料的型別,預設int型別。
###03.05_Java語言基礎(位運算子的基本用法2及面試題)(瞭解)
* A:案例演示 >>,>>>,<<的用法:
* <<:左移 左邊最高位丟棄,右邊補齊0
* >>:右移 最高位是0,左邊補齊0;最高為是1,左邊補齊1
* >>>:無符號右移 無論最高位是0還是1,左邊補齊0
* 最有效率的算出2 * 8的結果
###03.06_Java語言基礎(三元運算子的基本用法)(掌握)
* A:三元運算子的格式
* (關係表示式) ? 表示式1 : 表示式2;
* B:三元運算子的執行流程
* C:案例演示
* 獲取兩個數中的最大值
###03.07_Java語言基礎(三元運算子的練習)(掌握)
* A:案例演示
* 比較兩個整數是否相同
* B:案例演示
* 獲取三個整數中的最大值
###03.08_Java語言基礎(鍵盤錄入的基本格式講解)(掌握)
* A:為什麼要使用鍵盤錄入資料
* a:為了讓程式的資料更符合開發的資料
* b:讓程式更靈活一下
* B:如何實現鍵盤錄入呢?
* 先照格式來。
* a:導包
* 格式:
* import java.util.Scanner;
* 位置:
* 在class上面。
* b:建立鍵盤錄入物件
* 格式:
* Scanner sc = new Scanner(System.in);
* c:通過物件獲取資料
* 格式:
* int x = sc.nextInt();
* C:案例演示
* 鍵盤錄入1個整數,並輸出到控制檯。
* 鍵盤錄入2個整數,並輸出到控制檯。
###03.09_Java語言基礎(鍵盤錄入的練習1)(掌握)
* A:案例演示
* 鍵盤錄入練習:鍵盤錄入兩個資料,並對這兩個資料求和,輸出其結果
* B:案例演示
* 鍵盤錄入練習:鍵盤錄入兩個資料,獲取這兩個資料中的最大值
###03.10_Java語言基礎(鍵盤錄入的練習2)(掌握)
* A:案例演示
* 鍵盤錄入練習:鍵盤錄入兩個資料,比較這兩個資料是否相等
* B:案例演示
* 鍵盤錄入練習:鍵盤錄入三個資料,獲取這三個資料中的最大值
###03.11_Java語言基礎(順序結構語句)(瞭解)
* A:什麼是流程控制語句
* 流程控制語句:可以控制程式的執行流程。
* B:流程控制語句的分類
* 順序結構
* 選擇結構
* 迴圈結構
* C:執行流程:
* 從上往下,依次執行。
* D:案例演示
* 輸出幾句話看效果即可
###03.12_Java語言基礎(選擇結構if語句格式1及其使用)(掌握)
* A:選擇結構的分類
* if語句
* switch語句
* B:if語句有幾種格式
* 格式1
* 格式2
* 格式3
* C:if語句的格式1
*
if(比較表示式) {
語句體;
}
* D:執行流程:
* 先計算比較表示式的值,看其返回值是true還是false。
* 如果是true,就執行語句體;
* 如果是false,就不執行語句體;
###03.13_Java語言基礎(選擇結構if語句注意事項)(掌握)
* A:案例演示
* a:比較表示式無論簡單還是複雜,結果必須是boolean型別
* b:if語句控制的語句體如果是一條語句,大括號可以省略;
* 如果是多條語句,就不能省略。建議永遠不要省略。
* c:一般來說:有左大括號就沒有分號,有分號就沒有左大括號
###03.14_Java語言基礎(選擇結構if語句格式2及其使用)(掌握)
* A:if語句的格式2
*
if(比較表示式) {
語句體1;
}else {
語句體2;
}
* B:執行流程:
* 首先計算比較表示式的值,看其返回值是true還是false。
* 如果是true,就執行語句體1;
* 如果是false,就執行語句體2;
* C:案例演示
* a:獲取兩個資料中較大的值
* b:判斷一個數據是奇數還是偶數,並輸出是奇數還是偶數
* 注意事項:else後面是沒有比較表示式的,只有if後面有。
###03.15_Java語言基礎(if語句的格式2和三元的相互轉換問題)(掌握)
* A:案例演示
* if語句和三元運算子完成同一個效果
* B:案例演示
* if語句和三元運算子的區別
* 三元運算子實現的,都可以採用if語句實現。反之不成立。
* 什麼時候if語句實現不能用三元改進呢?
* 當if語句控制的操作是一個輸出語句的時候就不能。
* 為什麼呢?因為三元運算子是一個運算子,運算子操作完畢就應該有一個結果,而不是一個輸出。
###03.16_Java語言基礎(選擇結構if語句格式3及其使用)(掌握)
* A:if語句的格式3:
*
if(比較表示式1) {
語句體1;
}else if(比較表示式2) {
語句體2;
}else if(比較表示式3) {
語句體3;
}
...
else {
語句體n+1;
}
* B:執行流程:
* 首先計算比較表示式1看其返回值是true還是false,
* 如果是true,就執行語句體1,if語句結束。
* 如果是false,接著計算比較表示式2看其返回值是true還是false,
* 如果是true,就執行語句體2,if語句結束。
* 如果是false,接著計算比較表示式3看其返回值是true還是false,
* 如果都是false,就執行語句體n+1。
* C:注意事項:最後一個else可以省略,但是建議不要省略,可以對範圍外的錯誤值提示
###03.17_Java語言基礎(選擇結構if語句格式3練習)(掌握)
* A:練習1
*
需求:鍵盤錄入一個成績,判斷並輸出成績的等級。
90-100 優
80-89 良
70-79 中
60-69 及
0-59 差
* B:練習2
* 需求:
* 鍵盤錄入x的值,計算出y的並輸出。
* x>=3 y = 2 * x + 1;
* -1<x<3 y = 2 * x;
* x<=-1 y = 2 * x - 1;
###03.18_Java語言基礎(選擇結構if語句的巢狀使用)(掌握)
* A:案例演示
* 需求:獲取三個資料中的最大值
* if語句的巢狀使用。
###03.19_Java語言基礎(選擇結構switch語句的格式及其解釋)(掌握)
* A:switch語句的格式
*
switch(表示式) {
case 值1:
語句體1;
break;
case 值2:
語句體2;
break;
…
default:
語句體n+1;
break;
}
* B:switch語句的格式解釋
* C:面試題
* byte可以作為switch的表示式嗎?
* long可以作為switch的表示式嗎?
* String可以作為switch的表示式嗎?
* C:執行流程
* 先計算表示式的值
* 然後和case後面的匹配,如果有就執行對應的語句,否則執行default控制的語句
###03.20_Java語言基礎(選擇結構switch語句的練習)(掌握)
* A:整數(給定一個值,輸出對應星期幾)
###03.21_Java語言基礎(選擇結構switch語句的注意事項)(掌握)
* A:案例演示
* a:case後面只能是常量,不能是變數,而且,多個case後面的值不能出現相同的
* b:default可以省略嗎?
* 可以省略,但是不建議,因為它的作用是對不正確的情況給出提示。
* 特殊情況:
* case就可以把值固定。
* A,B,C,D
* c:break可以省略嗎?
* 最後一個可以省略,其他最好不要省略
* 會出現一個現象:case穿透。
* 最終我們建議不要省略
* d:default一定要在最後嗎?
* 不是,可以在任意位置。但是建議在最後。
* e:switch語句的結束條件
* a:遇到break就結束了
* b:執行到switch的右大括號就結束了
###03.22_Java語言基礎(選擇結構switch語句練習)(掌握)
* A:看程式寫結果:
*
int x = 2;
int y = 3;
switch(x){
default:
y++;
break;
case 3:
y++;
case 4:
y++;
}
System.out.println("y="+y);
* B:看程式寫結果:
*
int x = 2;
int y = 3;
switch(x){
default:
y++;
case 3:
y++;
case 4:
y++;
}
System.out.println("y="+y);
###03.23_Java語言基礎(選擇結構if語句和switch語句的區別)(掌握)
* A:總結switch語句和if語句的各自使用場景
* switch建議判斷固定值的時候用
* if建議判斷區間或範圍的時候用
* B:案例演示
* 分別用switch語句和if語句實現下列需求:
* 鍵盤錄入月份,輸出對應的季節