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

03.01_Java語(yǔ)言基礎(chǔ)(邏輯運(yùn)算符的基本用法)(掌握)

A:邏輯運(yùn)算符有哪些
&,|,^,!
&&,||
B:案例演示
邏輯運(yùn)算符的基本用法

注意事項(xiàng):

a:邏輯運(yùn)算符一般用于連接boolean類型的表達(dá)式或者值。
b:表達(dá)式:就是用運(yùn)算符把常量或者變量連接起來(lái)的符合java語(yǔ)法的式子。
算術(shù)表達(dá)式:a + b
比較表達(dá)式:a == b(條件表達(dá)式)
C:結(jié)論:

&邏輯與:有false則false。

|邏輯或:有true則true。

^邏輯異或:相同為false,不同為true。

!邏輯非:非false則true,非true則false。

特點(diǎn):偶數(shù)個(gè)不改變本身。
03.02_Java語(yǔ)言基礎(chǔ)(邏輯運(yùn)算符&&和&的區(qū)別)(掌握)

A:案例演示
&&和&的區(qū)別?
a:最終結(jié)果一樣。
b:&&具有短路效果。左邊是false,右邊不執(zhí)行。
&是無(wú)論左邊是false還是true,右邊都會(huì)執(zhí)行
B:同理||和|的區(qū)別?(學(xué)生自學(xué))
C:開(kāi)發(fā)中常用誰(shuí)?
&&,||,!
03.03_Java語(yǔ)言基礎(chǔ)(位運(yùn)算符的基本用法1)(了解)

A:位運(yùn)算符有哪些
&,|,^,~ ,>>,>>>,<<
B:案例演示

位運(yùn)算符的基本用法1

&,|,^,~ 的用法

&:有0則0

|:有1則1

^:相同則0,不同則1

~:按位取反

03.04_Java語(yǔ)言基礎(chǔ)(位異或運(yùn)算符的特點(diǎn)及面試題)(掌握)

A:案例演示

位異或運(yùn)算符的特點(diǎn)

^的特點(diǎn):一個(gè)數(shù)據(jù)對(duì)另一個(gè)數(shù)據(jù)位異或兩次,該數(shù)本身不變。

B:面試題:

請(qǐng)自己實(shí)現(xiàn)兩個(gè)整數(shù)變量的交換
注意:以后講課的過(guò)程中,我沒(méi)有明確指定數(shù)據(jù)的類型,默認(rèn)int類型。
03.05_Java語(yǔ)言基礎(chǔ)(位運(yùn)算符的基本用法2及面試題)(了解)

A:案例演示 >>,>>>,<<的用法:
<<:左移 左邊最高位丟棄,右邊補(bǔ)齊0

:右移 最高位是0,左邊補(bǔ)齊0;最高為是1,左邊補(bǔ)齊1

:無(wú)符號(hào)右移 無(wú)論最高位是0還是1,左邊補(bǔ)齊0
最有效率的算出2 * 8的結(jié)果
03.06_Java語(yǔ)言基礎(chǔ)(三元運(yùn)算符的基本用法)(掌握)

A:三元運(yùn)算符的格式
(關(guān)系表達(dá)式) ? 表達(dá)式1 : 表達(dá)式2;
B:三元運(yùn)算符的執(zhí)行流程
C:案例演示
獲取兩個(gè)數(shù)中的最大值
03.07_Java語(yǔ)言基礎(chǔ)(三元運(yùn)算符的練習(xí))(掌握)

A:案例演示
比較兩個(gè)整數(shù)是否相同
B:案例演示
獲取三個(gè)整數(shù)中的最大值
03.08_Java語(yǔ)言基礎(chǔ)(鍵盤(pán)錄入的基本格式講解)(掌握)

A:為什么要使用鍵盤(pán)錄入數(shù)據(jù)
a:為了讓程序的數(shù)據(jù)更符合開(kāi)發(fā)的數(shù)據(jù)
b:讓程序更靈活一下
B:如何實(shí)現(xiàn)鍵盤(pán)錄入呢?
先照格式來(lái)。
a:導(dǎo)包
格式:
import java.util.Scanner;
位置:
在class上面。
b:創(chuàng)建鍵盤(pán)錄入對(duì)象
格式:
Scanner sc = new Scanner(System.in);
c:通過(guò)對(duì)象獲取數(shù)據(jù)
格式:
int x = sc.nextInt();
C:案例演示
鍵盤(pán)錄入1個(gè)整數(shù),并輸出到控制臺(tái)。
鍵盤(pán)錄入2個(gè)整數(shù),并輸出到控制臺(tái)。
03.09_Java語(yǔ)言基礎(chǔ)(鍵盤(pán)錄入的練習(xí)1)(掌握)

A:案例演示
鍵盤(pán)錄入練習(xí):鍵盤(pán)錄入兩個(gè)數(shù)據(jù),并對(duì)這兩個(gè)數(shù)據(jù)求和,輸出其結(jié)果
B:案例演示
鍵盤(pán)錄入練習(xí):鍵盤(pán)錄入兩個(gè)數(shù)據(jù),獲取這兩個(gè)數(shù)據(jù)中的最大值
03.10_Java語(yǔ)言基礎(chǔ)(鍵盤(pán)錄入的練習(xí)2)(掌握)

A:案例演示
鍵盤(pán)錄入練習(xí):鍵盤(pán)錄入兩個(gè)數(shù)據(jù),比較這兩個(gè)數(shù)據(jù)是否相等
B:案例演示
鍵盤(pán)錄入練習(xí):鍵盤(pán)錄入三個(gè)數(shù)據(jù),獲取這三個(gè)數(shù)據(jù)中的最大值
03.11_Java語(yǔ)言基礎(chǔ)(順序結(jié)構(gòu)語(yǔ)句)(了解)

A:什么是流程控制語(yǔ)句
流程控制語(yǔ)句:可以控制程序的執(zhí)行流程。
B:流程控制語(yǔ)句的分類
順序結(jié)構(gòu)
選擇結(jié)構(gòu)
循環(huán)結(jié)構(gòu)
C:執(zhí)行流程:
從上往下,依次執(zhí)行。
D:案例演示
輸出幾句話看效果即可
03.12_Java語(yǔ)言基礎(chǔ)(選擇結(jié)構(gòu)if語(yǔ)句格式1及其使用)(掌握)

A:選擇結(jié)構(gòu)的分類
if語(yǔ)句
switch語(yǔ)句
B:if語(yǔ)句有幾種格式
格式1
格式2
格式3
C:if語(yǔ)句的格式1
if(比較表達(dá)式) { 語(yǔ)句體; }
D:執(zhí)行流程:
先計(jì)算比較表達(dá)式的值,看其返回值是true還是false。
如果是true,就執(zhí)行語(yǔ)句體;
如果是false,就不執(zhí)行語(yǔ)句體;
03.13_Java語(yǔ)言基礎(chǔ)(選擇結(jié)構(gòu)if語(yǔ)句注意事項(xiàng))(掌握)

A:案例演示
a:比較表達(dá)式無(wú)論簡(jiǎn)單還是復(fù)雜,結(jié)果必須是boolean類型
b:if語(yǔ)句控制的語(yǔ)句體如果是一條語(yǔ)句,大括號(hào)可以省略;
如果是多條語(yǔ)句,就不能省略。建議永遠(yuǎn)不要省略。
c:一般來(lái)說(shuō):有左大括號(hào)就沒(méi)有分號(hào),有分號(hào)就沒(méi)有左大括號(hào)
03.14_Java語(yǔ)言基礎(chǔ)(選擇結(jié)構(gòu)if語(yǔ)句格式2及其使用)(掌握)

A:if語(yǔ)句的格式2
if(比較表達(dá)式) { 語(yǔ)句體1; }else { 語(yǔ)句體2; }
B:執(zhí)行流程:
首先計(jì)算比較表達(dá)式的值,看其返回值是true還是false。
如果是true,就執(zhí)行語(yǔ)句體1;
如果是false,就執(zhí)行語(yǔ)句體2;
C:案例演示

a:獲取兩個(gè)數(shù)據(jù)中較大的值
b:判斷一個(gè)數(shù)據(jù)是奇數(shù)還是偶數(shù),并輸出是奇數(shù)還是偶數(shù)

注意事項(xiàng):else后面是沒(méi)有比較表達(dá)式的,只有if后面有。

03.15_Java語(yǔ)言基礎(chǔ)(if語(yǔ)句的格式2和三元的相互轉(zhuǎn)換問(wèn)題)(掌握)

A:案例演示
if語(yǔ)句和三元運(yùn)算符完成同一個(gè)效果
B:案例演示

if語(yǔ)句和三元運(yùn)算符的區(qū)別

三元運(yùn)算符實(shí)現(xiàn)的,都可以采用if語(yǔ)句實(shí)現(xiàn)。反之不成立。

什么時(shí)候if語(yǔ)句實(shí)現(xiàn)不能用三元改進(jìn)呢?

當(dāng)if語(yǔ)句控制的操作是一個(gè)輸出語(yǔ)句的時(shí)候就不能。
為什么呢?因?yàn)槿\(yùn)算符是一個(gè)運(yùn)算符,運(yùn)算符操作完畢就應(yīng)該有一個(gè)結(jié)果,而不是一個(gè)輸出。
03.16_Java語(yǔ)言基礎(chǔ)(選擇結(jié)構(gòu)if語(yǔ)句格式3及其使用)(掌握)

A:if語(yǔ)句的格式3:
if(比較表達(dá)式1) { 語(yǔ)句體1; }else if(比較表達(dá)式2) { 語(yǔ)句體2; }else if(比較表達(dá)式3) { 語(yǔ)句體3; } ... else { 語(yǔ)句體n+1; }
B:執(zhí)行流程:

首先計(jì)算比較表達(dá)式1看其返回值是true還是false,
如果是true,就執(zhí)行語(yǔ)句體1,if語(yǔ)句結(jié)束。
如果是false,接著計(jì)算比較表達(dá)式2看其返回值是true還是false,

如果是true,就執(zhí)行語(yǔ)句體2,if語(yǔ)句結(jié)束。

如果是false,接著計(jì)算比較表達(dá)式3看其返回值是true還是false,

如果都是false,就執(zhí)行語(yǔ)句體n+1。

C:注意事項(xiàng):最后一個(gè)else可以省略,但是建議不要省略,可以對(duì)范圍外的錯(cuò)誤值提示

03.17_Java語(yǔ)言基礎(chǔ)(選擇結(jié)構(gòu)if語(yǔ)句格式3練習(xí))(掌握)

A:練習(xí)1
需求:鍵盤(pán)錄入一個(gè)成績(jī),判斷并輸出成績(jī)的等級(jí)。
90-100 優(yōu)
80-89 良
70-79 中
60-69 及
0-59 差
B:練習(xí)2

需求:

鍵盤(pán)錄入x的值,計(jì)算出y的并輸出。

x>=3 y = 2 * x + 1;

-1<x<3 y = 2 * x;

x<=-1 y = 2 * x - 1;

03.18_Java語(yǔ)言基礎(chǔ)(選擇結(jié)構(gòu)if語(yǔ)句的嵌套使用)(掌握)

A:案例演示
需求:獲取三個(gè)數(shù)據(jù)中的最大值
if語(yǔ)句的嵌套使用。
03.19_Java語(yǔ)言基礎(chǔ)(選擇結(jié)構(gòu)switch語(yǔ)句的格式及其解釋)(掌握)

A:switch語(yǔ)句的格式
switch(表達(dá)式) {
case 值1:
語(yǔ)句體1;
break;
case 值2:
語(yǔ)句體2;
break;

default:
語(yǔ)句體n+1;
break;
}
B:switch語(yǔ)句的格式解釋

C:面試題

byte可以作為switch的表達(dá)式嗎?
long可以作為switch的表達(dá)式嗎?
String可以作為switch的表達(dá)式嗎?
C:執(zhí)行流程

先計(jì)算表達(dá)式的值
然后和case后面的匹配,如果有就執(zhí)行對(duì)應(yīng)的語(yǔ)句,否則執(zhí)行default控制的語(yǔ)句
03.20_Java語(yǔ)言基礎(chǔ)(選擇結(jié)構(gòu)switch語(yǔ)句的練習(xí))(掌握)

A:整數(shù)(給定一個(gè)值,輸出對(duì)應(yīng)星期幾)
03.21_Java語(yǔ)言基礎(chǔ)(選擇結(jié)構(gòu)switch語(yǔ)句的注意事項(xiàng))(掌握)

A:案例演示
a:case后面只能是常量,不能是變量,而且,多個(gè)case后面的值不能出現(xiàn)相同的
b:default可以省略嗎?
可以省略,但是不建議,因?yàn)樗淖饔檬菍?duì)不正確的情況給出提示。
特殊情況:
case就可以把值固定。
A,B,C,D
c:break可以省略嗎?
最后一個(gè)可以省略,其他最好不要省略
會(huì)出現(xiàn)一個(gè)現(xiàn)象:case穿透。
最終我們建議不要省略
d:default一定要在最后嗎?
不是,可以在任意位置。但是建議在最后。
e:switch語(yǔ)句的結(jié)束條件
a:遇到break就結(jié)束了
b:執(zhí)行到switch的右大括號(hào)就結(jié)束了
03.22_Java語(yǔ)言基礎(chǔ)(選擇結(jié)構(gòu)switch語(yǔ)句練習(xí))(掌握)

A:看程序?qū)懡Y(jié)果:
int x = 2;
int y = 3;
switch(x){
default:
y++;
break;
case 3:
y++;
case 4:
y++;
}
System.out.println("y="+y);
B:看程序?qū)懡Y(jié)果:

int x = 2;
int y = 3;
switch(x){
default:
y++;
case 3:
y++;
case 4:
y++;
}
System.out.println("y="+y);
03.23_Java語(yǔ)言基礎(chǔ)(選擇結(jié)構(gòu)if語(yǔ)句和switch語(yǔ)句的區(qū)別)(掌握)

A:總結(jié)switch語(yǔ)句和if語(yǔ)句的各自使用場(chǎng)景
switch建議判斷固定值的時(shí)候用
if建議判斷區(qū)間或范圍的時(shí)候用
B:案例演示
分別用switch語(yǔ)句和if語(yǔ)句實(shí)現(xiàn)下列需求:
鍵盤(pán)錄入月份,輸出對(duì)應(yīng)的季節(jié)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容