04.01_Java語言基礎(chǔ)(循環(huán)結(jié)構(gòu)概述和for語句的格式及其使用)
- A:循環(huán)結(jié)構(gòu)的分類
- for,while,do...while
- B:循環(huán)結(jié)構(gòu)for語句的格式:
for(初始化表達(dá)式;條件表達(dá)式;循環(huán)后的操作表達(dá)式) { 循環(huán)體; }
- C執(zhí)行流程:
- a:執(zhí)行初始化語句
- b:執(zhí)行判斷條件語句,看其返回值是true還是false
- 如果是true足绅,就繼續(xù)執(zhí)行
- 如果是false族购,就結(jié)束循環(huán)
- c:執(zhí)行循環(huán)體語句;
- d:執(zhí)行循環(huán)后的操作表達(dá)式
- e:回到B繼續(xù)旁瘫。
- D:案例演示
- 在控制臺(tái)輸出10次"helloworld"
/*
* A:循環(huán)結(jié)構(gòu)的分類
* for,while,do...while
* B:循環(huán)結(jié)構(gòu)for語句的格式:
*
for(初始化表達(dá)式;條件表達(dá)式;循環(huán)后的操作表達(dá)式) {
循環(huán)體;
}
* C執(zhí)行流程:
* a:執(zhí)行初始化語句
* b:執(zhí)行判斷條件語句,看其返回值是true還是false
* 如果是true,就繼續(xù)執(zhí)行
* 如果是false非竿,就結(jié)束循環(huán)
* c:執(zhí)行循環(huán)體語句;
* d:執(zhí)行循環(huán)后的操作表達(dá)式
* e:回到B繼續(xù)蜕着。
* D:案例演示
* 在控制臺(tái)輸出10次"helloworld"
*/
class Demo1_For {
public static void main(String[] args) {
//在控制輸出10次helloworld,這樣做不推薦,因?yàn)閺?fù)用性太差
/*System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");
System.out.println("helloworld");*/
for (int i = 1;i <= 10 ;i++ ) {
System.out.println("helloworld");
}
}
}
04.02_Java語言基礎(chǔ)(循環(huán)結(jié)構(gòu)for語句的練習(xí)之獲取數(shù)據(jù))
- A:案例演示
- 需求:請(qǐng)?jiān)诳刂婆_(tái)輸出數(shù)據(jù)1-10
- 需求:請(qǐng)?jiān)诳刂婆_(tái)輸出數(shù)據(jù)10-1
- B:注意事項(xiàng)
- a:判斷條件語句無論簡(jiǎn)單還是復(fù)雜結(jié)果是boolean類型。
- b:循環(huán)體語句如果是一條語句汽馋,大括號(hào)可以省略侮东;如果是多條語句,大括號(hào)不能省略豹芯。建議永遠(yuǎn)不要省略悄雅。
- c:一般來說:有左大括號(hào)就沒有分號(hào),有分號(hào)就沒有左大括號(hào)
/*
* A:案例演示
* 需求:請(qǐng)?jiān)诳刂婆_(tái)輸出數(shù)據(jù)1-10
* 需求:請(qǐng)?jiān)诳刂婆_(tái)輸出數(shù)據(jù)10-1
* B:注意事項(xiàng)
* a:判斷條件語句無論簡(jiǎn)單還是復(fù)雜結(jié)果是boolean類型铁蹈。
* b:循環(huán)體語句如果是一條語句宽闲,大括號(hào)可以省略;如果是多條語句握牧,大括號(hào)不能省略容诬。建議永遠(yuǎn)不要省略。
* c:一般來說:有左大括號(hào)就沒有分號(hào)沿腰,有分號(hào)就沒有左大括號(hào)
*/
class Test1_For {
public static void main(String[] args) {
for (int i = 1;i <= 10 ;i++ ){
System.out.println("i = " + i);
}
System.out.println("-----------------------");
for (int i = 10;i >= 1 ;i-- ) {
System.out.println("i = " + i);
}
}
}
04.03_Java語言基礎(chǔ)(循環(huán)結(jié)構(gòu)for語句的練習(xí)之求和思想)
- A:案例演示
- 需求:求出1-10之間數(shù)據(jù)之和
- B:學(xué)生練習(xí)
- 需求:求出1-100之間偶數(shù)和
- 需求:求出1-100之間奇數(shù)和
/*
* A:案例演示
* 需求:求出1-10之間數(shù)據(jù)之和
* B:學(xué)生練習(xí)
* 需求:求出1-100之間偶數(shù)和
* 需求:求出1-100之間奇數(shù)和
分析:1-10數(shù)據(jù)的和
0 + 1
1 + 2
3 + 3
6
...
*/
class Test2_For {
public static void main(String[] args) {
//1-10的和
/*int sum = 0;
for (int i = 1;i <= 10 ;i++ ) {
sum = sum + i;
}
System.out.println("sum = " + sum);*/
//1-100的偶數(shù)和
/*int sum = 0;
for (int i = 1;i <= 100 ;i++ ) {
if (i % 2 == 0) {
sum = sum + i;
}
}
System.out.println("sum = " + sum);*/
//1-100的奇數(shù)和
int sum = 0;
for (int i = 1;i <= 100 ;i+=2 ) {
/*if (i % 2 != 0) {
sum = sum + i;
}*/
sum = sum + i;
}
System.out.println("sum = " + sum);
}
}
04.04_Java語言基礎(chǔ)(循環(huán)結(jié)構(gòu)for語句的練習(xí)之水仙花)
- A:案例演示
需求:在控制臺(tái)輸出所有的”水仙花數(shù)”
所謂的水仙花數(shù)是指一個(gè)三位數(shù)览徒,其各位數(shù)字的立方和等于該數(shù)本身。
舉例:153就是一個(gè)水仙花數(shù)颂龙。
153 = 111 + 555 + 333 = 1 + 125 + 27 = 153
/*
* A:案例演示
* 需求:在控制臺(tái)輸出所有的”水仙花數(shù)”
* 所謂的水仙花數(shù)是指一個(gè)三位數(shù)习蓬,其各位數(shù)字的立方和等于該數(shù)本身纽什。
* 舉例:153就是一個(gè)水仙花數(shù)。
* 153 = 1*1*1 + 5*5*5 + 3*3*3 = 1 + 125 + 27 = 153
分析:
1,100 - 999
2,獲取每一個(gè)位數(shù)的值,百位,十位,個(gè)位
3,判斷各個(gè)位上的立方和是否等于這個(gè)數(shù),如果等于打印
*/
class Test3_Flower {
public static void main(String[] args) {
for (int i = 100;i <= 999 ;i++ ) { //獲取100到999之間的數(shù)
int ge = i % 10; //123 % 10
int shi = i / 10 % 10; //12 % 10;
int bai = i / 10 / 10 % 10; //1 % 10
if (ge * ge * ge + shi * shi * shi + bai * bai * bai == i) {
System.out.println(i);
}
}
}
}
04.05_Java語言基礎(chǔ)(循環(huán)結(jié)構(gòu)for語句的練習(xí)之統(tǒng)計(jì)思想)
- A:案例演示
- 需求:統(tǒng)計(jì)”水仙花數(shù)”共有多少個(gè)
/*
* A:案例演示
* 需求:統(tǒng)計(jì)”水仙花數(shù)”共有多少個(gè)
分析:
1,需要有一個(gè)變量記錄住水仙花數(shù)的個(gè)數(shù)
2,獲取到所有的3位數(shù)
3,判斷是否滿足水仙花數(shù)
4,如果滿足條件,計(jì)數(shù)器就自增
*/
class Test4_FlowerCount {
public static void main(String[] args) {
int count = 0;
for (int i = 100;i <= 999 ;i++ ) {
int ge = i % 10;
int shi = i / 10 % 10;
int bai = i / 10 / 10;
if (i == ge * ge * ge + shi * shi * shi + bai * bai * bai) {
count ++; //滿足條件就自增,計(jì)數(shù)器思想
}
}
System.out.println(count);
}
}
04.06_Java語言基礎(chǔ)(循環(huán)結(jié)構(gòu)while語句的格式和基本使用)
- A:循環(huán)結(jié)構(gòu)while語句的格式:
while循環(huán)的基本格式: while(判斷條件語句) { 循環(huán)體語句; } 完整格式: 初始化語句; while(判斷條件語句) { 循環(huán)體語句; 控制條件語句; }
- B:執(zhí)行流程:
- a:執(zhí)行初始化語句
- b:執(zhí)行判斷條件語句,看其返回值是true還是false
- 如果是true躲叼,就繼續(xù)執(zhí)行
- 如果是false芦缰,就結(jié)束循環(huán)
- c:執(zhí)行循環(huán)體語句;
- d:執(zhí)行控制條件語句
- e:回到B繼續(xù)。
- C:案例演示
- 需求:請(qǐng)?jiān)诳刂婆_(tái)輸出數(shù)據(jù)1-10
/*
* A:循環(huán)結(jié)構(gòu)while語句的格式:
*
while循環(huán)的基本格式:
while(判斷條件語句) {
循環(huán)體語句;
}
完整格式:
初始化語句;
while(判斷條件語句) {
循環(huán)體語句;
控制條件語句;
}
* B:執(zhí)行流程:
* a:執(zhí)行初始化語句
* b:執(zhí)行判斷條件語句,看其返回值是true還是false
* 如果是true枫慷,就繼續(xù)執(zhí)行
* 如果是false让蕾,就結(jié)束循環(huán)
* c:執(zhí)行循環(huán)體語句;
* d:執(zhí)行控制條件語句
* e:回到B繼續(xù)。
* C:案例演示
* 需求:請(qǐng)?jiān)诳刂婆_(tái)輸出數(shù)據(jù)1-10
*/
class Demo1_While {
public static void main(String[] args) {
int x = 1;
while (x <= 10) {
System.out.println("x = " + x);
x++;
}
}
}
04.07_Java語言基礎(chǔ)(循環(huán)結(jié)構(gòu)while語句的練習(xí))
- A:求和思想
- 求1-100之和
- B:統(tǒng)計(jì)思想
- 統(tǒng)計(jì)”水仙花數(shù)”共有多少個(gè)
class Test1_While {
public static void main(String[] args) {
/*
* A:求和思想
* 求1-100之和
* B:統(tǒng)計(jì)思想
* 統(tǒng)計(jì)”水仙花數(shù)”共有多少個(gè)
*/
//求1-100之和
/*int sum = 0;
int i = 1;
while (i <= 100) {
sum += i; //sum = sum + i;
i++; //讓變量i自增
}
System.out.println("sum = " + sum);*/
//統(tǒng)計(jì)”水仙花數(shù)”共有多少個(gè)
int count = 0; //計(jì)數(shù)器
int i = 100;
while (i <= 999) {
int ge = i % 10;
int shi = i / 10 % 10;
int bai = i / 100;
if (i == ge * ge * ge + shi * shi * shi + bai * bai * bai) {
count ++;
}
i++;
}
System.out.println("count =" + count);
//某屌絲為了追求女神,寫了一段代碼示愛,但是女神也會(huì)java,改動(dòng)一下把屌絲拒絕
int j = 1;
while (j <= 10000) {
System.out.println("I Love You!!!");
j++;
}
}
}
04.08_Java語言基礎(chǔ)(循環(huán)結(jié)構(gòu)do...while語句的格式和基本使用)
- A:循環(huán)結(jié)構(gòu)do...while語句的格式:
do { 循環(huán)體語句; }while(判斷條件語句); 完整格式或听; 初始化語句; do { 循環(huán)體語句; 控制條件語句; }while(判斷條件語句);
- B:執(zhí)行流程:
- a:執(zhí)行初始化語句
- b:執(zhí)行循環(huán)體語句;
- c:執(zhí)行控制條件語句
- d:執(zhí)行判斷條件語句,看其返回值是true還是false
- 如果是true探孝,就繼續(xù)執(zhí)行
- 如果是false,就結(jié)束循環(huán)
- e:回到b繼續(xù)誉裆。
- C:案例演示
- 需求:請(qǐng)?jiān)诳刂婆_(tái)輸出數(shù)據(jù)1-10
/*
* A:循環(huán)結(jié)構(gòu)do...while語句的格式:
*
do {
循環(huán)體語句;
}while(判斷條件語句);
完整格式再姑;
初始化語句;
do {
循環(huán)體語句;
控制條件語句;
}while(判斷條件語句);
* B:執(zhí)行流程:
* a:執(zhí)行初始化語句
* b:執(zhí)行循環(huán)體語句;
* c:執(zhí)行控制條件語句
* d:執(zhí)行判斷條件語句,看其返回值是true還是false
* 如果是true,就繼續(xù)執(zhí)行
* 如果是false找御,就結(jié)束循環(huán)
* e:回到b繼續(xù)。
* C:案例演示
* 需求:請(qǐng)?jiān)诳刂婆_(tái)輸出數(shù)據(jù)1-10
*/
class Demo1_DoWhile {
public static void main(String[] args) {
//while 和do while的區(qū)別
/*int i = 11;
do {
System.out.println("i = " + i);
i++;
}
while (i <= 10);
System.out.println("---------------------");
int j = 11;
while (j <= 10) {
System.out.println("j = " + j);
j++;
}*/
/*for (int i = 1;i <= 10 ;i++ ) {
System.out.println("i = " + i);
}
//System.out.println("i = " + i); for語句執(zhí)行后變量會(huì)被釋放,不能再使用
System.out.println("-------------------");
int i = 1;
while (i <= 10) {
System.out.println("i = " + i);
i++;
}
System.out.println("-------------------");
System.out.println("i = " + i); //while語句執(zhí)行后,初始化變量還可以繼續(xù)使用*/
//while語句的無限循環(huán)
/*while (true) {
System.out.println("hello world");
}*/
//System.out.println("hello world");
//for語句的無限循環(huán)
for (; ; ) {
System.out.println("hello world");
}
}
}
04.09_Java語言基礎(chǔ)(循環(huán)結(jié)構(gòu)三種循環(huán)語句的區(qū)別)
- A:案例演示
- 三種循環(huán)語句的區(qū)別:
- do...while循環(huán)至少執(zhí)行一次循環(huán)體绍填。
- 而for,while循環(huán)必須先判斷條件是否成立霎桅,然后決定是否執(zhí)行循環(huán)體語句。
- B:案例演示
- for循環(huán)和while循環(huán)的區(qū)別:
- A:如果你想在循環(huán)結(jié)束后讨永,繼續(xù)使用控制條件的那個(gè)變量滔驶,用while循環(huán),否則用for循環(huán)卿闹。不知道用誰就用for循環(huán)揭糕。因?yàn)樽兞考霸绲膹膬?nèi)存中消失,可以提高內(nèi)存的使用效率锻霎。
- for循環(huán)和while循環(huán)的區(qū)別:
04.10_Java語言基礎(chǔ)(循環(huán)結(jié)構(gòu)注意事項(xiàng)之死循環(huán))
- A:一定要注意控制條件語句控制的那個(gè)變量的問題著角,不要弄丟了,否則就容易死循環(huán)旋恼。
- B:兩種最簡(jiǎn)單的死循環(huán)格式
- while(true){...}
- for(;;){...}
04.11_Java語言基礎(chǔ)(循環(huán)結(jié)構(gòu)循環(huán)嵌套輸出4行5列的星星)
- A:案例演示
- 需求:請(qǐng)輸出一個(gè)4行5列的星星(*)圖案吏口。
如圖: ***** ***** ***** ***** 注意: System.out.println("*");和System.out.print("*");的區(qū)別
- B:結(jié)論:
- 外循環(huán)控制行數(shù),內(nèi)循環(huán)控制列數(shù)
/*
* A:案例演示
* 需求:請(qǐng)輸出一個(gè)4行5列的星星(*)圖案冰更。
*
如圖:
*****
*****
*****
*****
注意:
System.out.println("*");和System.out.print("*");的區(qū)別
* B:結(jié)論:
* 外循環(huán)控制行數(shù)产徊,內(nèi)循環(huán)控制列數(shù)
*/
class Demo1_ForFor {
public static void main(String[] args) {
/*for (int i = 1;i <= 3 ;i++ ) { //外循環(huán)
System.out.println("i = " + i);
for (int j = 1;j <= 3 ;j++ ) { //內(nèi)循環(huán)
System.out.println("j = " + j);
}
}*/
for (int i = 1;i <= 4 ;i++ ) { //外循環(huán)決定的是行數(shù)
for (int j = 1;j <= 5 ;j++ ) { //內(nèi)循環(huán)決定的是列數(shù)
System.out.print("*");
}
System.out.println();
}
}
}
/*
*****
*****
*****
*****
*/
04.12_Java語言基礎(chǔ)(循環(huán)結(jié)構(gòu)循環(huán)嵌套輸出正三角形)
- A:案例演示
需求:請(qǐng)輸出下列的形狀 * ** *** **** *****
/*
需求:請(qǐng)輸出下列的形狀
*
**
***
****
*****
*/
class Demo2_ForFor {
public static void main(String[] args) {
for (int i = 1;i <= 5 ; i++) { //外循環(huán)決定行數(shù)
for (int j = 1;j <= i ;j++ ) { //內(nèi)循環(huán)決定列數(shù)
System.out.print("*");
}
System.out.println(); //將光標(biāo)換到下一行的行首
}
}
}
/*
*
**
*/
04.13_Java語言基礎(chǔ)(循環(huán)結(jié)構(gòu)九九乘法表)
- A:案例演示
- 需求:在控制臺(tái)輸出九九乘法表。
/*
* A:案例演示
* 需求:在控制臺(tái)輸出九九乘法表蜀细。
1 * 1 = 1
1 * 2 = 2 2 * 2 = 4
1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
...
*
**
***
*/
class Demo3_For99 {
public static void main(String[] args) {
/*for (int i = 1;i <= 9 ;i++ ) { //行數(shù)
for (int j = 1;j <= i ;j++ ) { //列數(shù)
System.out.print(j + "*" + i + "=" + (i * j) + "\t" );
}
System.out.println();
}*/
//System.out.println("\""); 轉(zhuǎn)義雙引號(hào)
System.out.println('\''); //轉(zhuǎn)義單引號(hào)
}
}
- B:代碼優(yōu)化
注意: '\x' x表示任意舟铜,\是轉(zhuǎn)義符號(hào),這種做法叫轉(zhuǎn)移字符。 '\t' tab鍵的位置 '\r' 回車 '\n' 換行 '\"' '\''
04.14_Java語言基礎(chǔ)(控制跳轉(zhuǎn)語句break語句)
- A:break的使用場(chǎng)景
- 只能在switch和循環(huán)中
/*
* A:break的使用場(chǎng)景
* 只能在switch和循環(huán)中
*/
class Demo1_Break {
public static void main(String[] args) {
for (int x = 1;x <= 10 ;x++ ) {
if (x == 4) {
break; //跳出循環(huán)
}
System.out.println("x = " + x);
}
}
}
04.15_Java語言基礎(chǔ)(控制跳轉(zhuǎn)語句continue語句)
- A:continue的使用場(chǎng)景
- 只能在循環(huán)中
/*
* A:continue的使用場(chǎng)景
* 只能在循環(huán)中
*/
class Demo2_Continue {
public static void main(String[] args) {
for (int x = 1;x <= 10 ;x++ ) {
if (x == 4) {
continue; //終止本次循環(huán),繼續(xù)下次循環(huán)
}
System.out.println("x = " + x);
}
}
}
04.16_Java語言基礎(chǔ)(控制跳轉(zhuǎn)語句標(biāo)號(hào))
- 標(biāo)號(hào):標(biāo)記某個(gè)循環(huán)對(duì)其控制
- 標(biāo)號(hào)組成規(guī)則:其實(shí)就是合法的標(biāo)識(shí)符
class Demo3_Mark { //mark 標(biāo)記
public static void main(String[] args) {
/*outer: for (int i = 1;i <= 10 ;i++ ) { //a就是標(biāo)號(hào),只要是合法的標(biāo)識(shí)符即可
System.out.println("i = " + i);
inner: for (int j = 1;j <= 10 ;j++ ) {
System.out.println("j = " + j);
break outer;
}
}*/
System.out.println("大家好");
http://www.heima.com
System.out.println("才是真的好");
}
}
04.17_Java語言基礎(chǔ)(控制調(diào)整語句練習(xí))
- A:練習(xí)題
for(int x=1; x<=10; x++) { if(x%3==0) { //在此處填寫代碼 } System.out.println(“Java基礎(chǔ)班”); } 我想在控制臺(tái)輸出2次:“Java基礎(chǔ)班“ 我想在控制臺(tái)輸出7次:“Java基礎(chǔ)班“ 我想在控制臺(tái)輸出13次:“Java基礎(chǔ)班“
/*
for(int x=1; x<=10; x++) {
if(x%3==0) {
//在此處填寫代碼
}
System.out.println(“Java基礎(chǔ)班”);
}
我想在控制臺(tái)輸出2次:“Java基礎(chǔ)班“
我想在控制臺(tái)輸出7次:“Java基礎(chǔ)班“
我想在控制臺(tái)輸出13次:“Java基礎(chǔ)班“
*/
class Test1 {
public static void main(String[] args) {
for(int x=1; x<=10; x++) {
if(x%3==0) {
//break; //我想在控制臺(tái)輸出2次:“Java基礎(chǔ)班“
//continue; //我想在控制臺(tái)輸出7次:“Java基礎(chǔ)班“
System.out.println("Java基礎(chǔ)班");//我想在控制臺(tái)輸出13次:“Java基礎(chǔ)班“
}
System.out.println("Java基礎(chǔ)班");
}
}
}
04.18_Java語言基礎(chǔ)(控制跳轉(zhuǎn)語句return語句)
- A:return的作用
- 返回
- 其實(shí)它的作用不是結(jié)束循環(huán)的奠衔,而是結(jié)束方法的谆刨。
- B:案例演示
- return和break以及continue的區(qū)別?
- return是結(jié)束方法
- break是跳出循環(huán)
- continue是終止本次循環(huán)繼續(xù)下次循環(huán)
class Demo4_Return {
public static void main(String[] args) {
for (int i = 1;i <= 10 ;i++ ) {
if (i == 4) {
//break; //停止循環(huán)
return; //返回的意思,用來返回方法
}
}
System.out.println("循環(huán)結(jié)束了");
}
}
04.19_Java語言基礎(chǔ)(方法概述和格式說明)
- A:為什么要有方法
- 提高代碼的復(fù)用性
- B:什么是方法
- 完成特定功能的代碼塊塘娶。
- C:方法的格式
修飾符 返回值類型 方法名(參數(shù)類型 參數(shù)名1,參數(shù)類型 參數(shù)名2...) { 方法體語句; return 返回值; }
- D:方法的格式說明
- 修飾符:目前就用 public static。后面我們?cè)僭敿?xì)的講解其他的修飾符痴荐。
- 返回值類型:就是功能結(jié)果的數(shù)據(jù)類型血柳。
- 方法名:符合命名規(guī)則即可。方便我們的調(diào)用生兆。
- 參數(shù):
- 實(shí)際參數(shù):就是實(shí)際參與運(yùn)算的难捌。
- 形式參數(shù);就是方法定義上的鸦难,用于接收實(shí)際參數(shù)的根吁。
- 參數(shù)類型:就是參數(shù)的數(shù)據(jù)類型
- 參數(shù)名:就是變量名
- 方法體語句:就是完成功能的代碼。
- return:結(jié)束方法的合蔽。
- 返回值:就是功能的結(jié)果击敌,由return帶給調(diào)用者。
class Demo1_Method {
public static void main(String[] args) {
}
/*
* C:方法的格式
*
修飾符 返回值類型 方法名(參數(shù)類型 參數(shù)名1,參數(shù)類型 參數(shù)名2...) {
方法體語句;
return 返回值;
}
* D:方法的格式說明
* 修飾符:目前就用 public static拴事。后面我們?cè)僭敿?xì)的講解其他的修飾符沃斤。
* 返回值類型:就是功能結(jié)果的數(shù)據(jù)類型。
* 方法名:符合命名規(guī)則即可刃宵。方便我們的調(diào)用衡瓶。
* 參數(shù):
* 實(shí)際參數(shù):就是實(shí)際參與運(yùn)算的。
* 形式參數(shù)牲证;就是方法定義上的哮针,用于接收實(shí)際參數(shù)的。
* 參數(shù)類型:就是參數(shù)的數(shù)據(jù)類型
* 參數(shù)名:就是變量名
* 方法體語句:就是完成功能的代碼坦袍。
* return:結(jié)束方法的十厢。
* 返回值:就是功能的結(jié)果,由return帶給調(diào)用者捂齐。
*/
}
04.20_Java語言基礎(chǔ)(方法之求和案例及其調(diào)用)
- A:如何寫一個(gè)方法
- 1,明確返回值類型
- 2,明確參數(shù)列表
- B:案例演示
- 需求:求兩個(gè)數(shù)據(jù)之和的案例
- C:方法調(diào)用圖解
/*
* A:如何寫一個(gè)方法
* 1,明確返回值類型
* 2,明確參數(shù)列表
* B:案例演示
* 需求:求兩個(gè)數(shù)據(jù)之和的案例
* C:方法調(diào)用圖解
*/
class Demo2_Sum {
public static void main(String[] args) {
/*int a = 10;
int b = 20;
int sum = a + b;
System.out.println(sum);
int c = 30;
int d = 40;
int sum2 = c + d;
System.out.println(sum2);*/
int sum = add(10,20);
System.out.println(sum);
//add(30,40); //有返回值方法的單獨(dú)調(diào)用,沒有意義
System.out.println(add(30,40)); //這樣調(diào)用是可以,but如果需要用這個(gè)結(jié)果不推薦這樣調(diào)用
//盤子 = 炒菜(地溝油,蘇丹紅,鎘大米,爛白菜);
}
/*
求兩個(gè)整數(shù)的和
1,整數(shù)的和結(jié)果應(yīng)該還是整數(shù)
2,有兩個(gè)未知內(nèi)容參與運(yùn)算
如何寫方法
1,明確返回值類型
2,明確參數(shù)列表
* 修飾符:目前就用 public static蛮放。后面我們?cè)僭敿?xì)的講解其他的修飾符。
* 返回值類型:就是功能結(jié)果的數(shù)據(jù)類型奠宜。
* 方法名:符合命名規(guī)則即可筛武。方便我們的調(diào)用。
* 參數(shù):
* 實(shí)際參數(shù):就是實(shí)際參與運(yùn)算的挎塌。
* 形式參數(shù)徘六;就是方法定義上的,用于接收實(shí)際參數(shù)的榴都。
* 參數(shù)類型:就是參數(shù)的數(shù)據(jù)類型
* 參數(shù)名:就是變量名
* 方法體語句:就是完成功能的代碼待锈。
* return:結(jié)束方法的。
* 返回值:就是功能的結(jié)果嘴高,由return帶給調(diào)用者竿音。
*/
public static int add(int a,int b) { //int a = 10,int b = 20
int sum = a + b;
return sum; //如果有返回值必須用return語句帶回
}
/*
盤子 炒菜(油,調(diào)料,米,菜) {
炒菜的動(dòng)作
return 一盤菜;
}
*/
}
04.21_Java語言基礎(chǔ)(方法的注意事項(xiàng))
- A:方法調(diào)用(有具體返回值)
- a:單獨(dú)調(diào)用,一般來說沒有意義和屎,所以不推薦。
- b:輸出調(diào)用,但是不夠好春瞬。因?yàn)槲覀兛赡苄枰槍?duì)結(jié)果進(jìn)行進(jìn)一步的操作柴信。
- c:賦值調(diào)用,推薦方案。
- B:案例演示
- a:方法不調(diào)用不執(zhí)行
- b:方法與方法是平級(jí)關(guān)系宽气,不能嵌套定義
- c:方法定義的時(shí)候參數(shù)之間用逗號(hào)隔開
- d:方法調(diào)用的時(shí)候不用在傳遞數(shù)據(jù)類型
- e:如果方法有明確的返回值随常,一定要有return帶回一個(gè)值
04.22_Java語言基礎(chǔ)(方法的練習(xí))
- A:案例演示
- 需求:鍵盤錄入兩個(gè)數(shù)據(jù),返回兩個(gè)數(shù)中的較大值
- B:案例演示
- 需求:鍵盤錄入兩個(gè)數(shù)據(jù)萄涯,比較兩個(gè)數(shù)是否相等
/*
* A:案例演示
* 需求:鍵盤錄入兩個(gè)數(shù)據(jù)绪氛,返回兩個(gè)數(shù)中的較大值
* B:案例演示
* 需求:鍵盤錄入兩個(gè)數(shù)據(jù),比較兩個(gè)數(shù)是否相等
*/
import java.util.Scanner;
class Test1_Method {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); //創(chuàng)建鍵盤錄入對(duì)象
System.out.println("請(qǐng)輸入第一個(gè)整數(shù):");
int x = sc.nextInt(); //將鍵盤錄入的整數(shù)存儲(chǔ)在x中
System.out.println("請(qǐng)輸入第二個(gè)整數(shù):");
int y = sc.nextInt(); //將鍵盤錄入的整數(shù)存儲(chǔ)在y中
//int max = getMax(x,y);
//System.out.println(max);
boolean b = isEquals(x,y);
System.out.println(b);
}
/*
返回連個(gè)整數(shù)的較大值
1,明確返回值類型 int
2,明確參數(shù)列表 int a,int b
*/
public static int getMax(int a,int b) {
return a > b ? a : b;
}
/*
判斷兩個(gè)整數(shù)是否相等
1,明確返回值類型 boolean
2,明確參數(shù)列表 int a,int b
*/
public static boolean isEquals(int a,int b) { //isEquals 是否相等
return a == b;
}
}
04.23_Java語言基礎(chǔ)(方法之輸出星形及其調(diào)用)
- A:案例演示
- 需求:根據(jù)鍵盤錄入的行數(shù)和列數(shù)涝影,在控制臺(tái)輸出星形
- B:方法調(diào)用:(無返回值,void)
- 單獨(dú)調(diào)用
- 輸出調(diào)用(錯(cuò)誤)
- 賦值調(diào)用(錯(cuò)誤)
/*
* A:案例演示
* 需求:根據(jù)鍵盤錄入的行數(shù)和列數(shù)枣察,在控制臺(tái)輸出星形
* B:方法調(diào)用:
* 單獨(dú)調(diào)用
* 輸出調(diào)用(錯(cuò)誤)
* 賦值調(diào)用(錯(cuò)誤)
*/
import java.util.Scanner;
class Demo3_Method {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); //創(chuàng)建鍵盤錄入對(duì)象
System.out.println("請(qǐng)輸入行數(shù):");
int row = sc.nextInt(); //將鍵盤錄入的行數(shù)存儲(chǔ)在row中
System.out.println("請(qǐng)輸入列數(shù):");
int column = sc.nextInt(); //將鍵盤錄入的列數(shù)存儲(chǔ)在column中
//System.out.println(print(row,column)); //錯(cuò)誤: 此處不允許使用 '空' 類型,返回值是void的方法不能輸出調(diào)用
//返回值是void的方法只能單獨(dú)調(diào)用
print(row,column);
}
/*
在控制臺(tái)輸出矩形星形
1,明確返回值類型,經(jīng)分析沒有具體的返回值類型,void
2,明確參數(shù)列表int a,int b
*/
public static void print(int a,int b) {
for (int i = 1;i <= a ;i++ ) { //行數(shù)
for (int j = 1;j <= b ;j++ ) { //列數(shù)
System.out.print("*");
}
System.out.println();
}
//return ; //如果返回值類型是void,return可以省略,即使省略系統(tǒng)也會(huì)默認(rèn)給加上,形式是return;
}
}
04.24_Java語言基礎(chǔ)(方法的練習(xí))
- A:案例演示
- 需求:根據(jù)鍵盤錄入的數(shù)據(jù)輸出對(duì)應(yīng)的乘法表
/*
* A:案例演示
* 需求:根據(jù)鍵盤錄入的數(shù)據(jù)輸出對(duì)應(yīng)的乘法表
*/
import java.util.Scanner;
class Test2_Method {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); //創(chuàng)建鍵盤錄入對(duì)象
System.out.println("請(qǐng)錄入一個(gè)整數(shù),范圍在1-9之間");
int num = sc.nextInt(); //將鍵盤錄入的整數(shù)存儲(chǔ)在num中
print99(num);
}
/*
打印99乘法表
1,返回值類型void
2,參數(shù)列表,int a
*/
public static void print99(int a) {
for (int i = 1;i <= a ;i++ ) { //行數(shù)
for (int j = 1;j <= i ;j++ ) { //列數(shù)
System.out.print(j + "*" + i + "=" + (i * j) + "\t" );
}
System.out.println();
}
}
}
04.25_Java語言基礎(chǔ)(方法重載概述和基本使用)
- A:方法重載概述
- 求和案例
- 2個(gè)整數(shù)
- 3個(gè)整數(shù)
- 4個(gè)整數(shù)
- 求和案例
- B:方法重載:
在同一個(gè)類中,方法名相同燃逻,參數(shù)列表不同序目。與返回值類型無關(guān)。
-
參數(shù)列表不同:
- A:參數(shù)個(gè)數(shù)不同
- B:參數(shù)類型不同
- C:參數(shù)的順序不同(算重載,但是在開發(fā)中不用)
/*
重載:方法名相同,參數(shù)列表不同,與返回值類型無關(guān)
重載的分類
1,參數(shù)個(gè)數(shù)不同
2,參數(shù)類型不同
順序不同
*/
class Demo4_Overload { //overload重載
public static void main(String[] args) {
double sum1 = add(10,20.1);
System.out.println(sum1);
int sum2 = add(10,20,30);
System.out.println(sum2);
double sum3 = add(12.3,13);
System.out.println(sum3);
}
/*
求兩個(gè)整數(shù)的和
1,返回值類型int
2,參數(shù)列表 int a,int b
*/
public static double add(int a,double b) {
return a + b;
}
/*
求三個(gè)整數(shù)的和
1,返回值類型int
2,參數(shù)列表 int a,int b,int c
*/
public static int add(int a,int b,int c) {
return a + b + c;
}
/*
求兩個(gè)小數(shù)的和
1,返回值類型double
2,參數(shù)列表 double a,double b
*/
public static double add(double a,int b) {
return a + b;
}
}
04.26_Java語言基礎(chǔ)(方法重載練習(xí)比較數(shù)據(jù)是否相等)
- A:案例演示
- 需求:比較兩個(gè)數(shù)據(jù)是否相等伯襟。
- 參數(shù)類型分別為兩個(gè)int類型宛琅,兩個(gè)double類型,并在main方法中進(jìn)行測(cè)試
/*
* A:案例演示
* 需求:比較兩個(gè)數(shù)據(jù)是否相等逗旁。
* 參數(shù)類型分別為兩個(gè)int類型,兩個(gè)double類型舆瘪,并在main方法中進(jìn)行測(cè)試
*/
class Test3_Overload {
public static void main(String[] args) {
boolean b1 = isEquals(10,10);
System.out.println(b1);
boolean b2 = isEquals(10.5,10.5);
System.out.println(b2);
}
/*
比較兩個(gè)數(shù)據(jù)是否相等
1,返回值類型boolean
2,參數(shù)列表int a,int b
*/
public static boolean isEquals(int a,int b) {
return a == b;
}
/*
比較兩個(gè)數(shù)據(jù)是否相等
1,返回值類型boolean
2,參數(shù)列表double a,double b
*/
public static boolean isEquals(double a,double b) {
return a == b;
}
}
04.27_day04總結(jié)
把今天的知識(shí)點(diǎn)總結(jié)一遍片效。