03 Java語言基礎(邏輯運算符的基本用法)2018-06-17

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語句實現下列需求:
鍵盤錄入月份,輸出對應的季節

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容