Java語言基礎(循環結構概述和for語句的格式及其使用)
Java語言基礎(循環結構for語句的練習之擷取資料)
Java語言基礎(循環結構for語句的練習之求和思想)
Java語言基礎(循環結構for語句的練習之水仙花)
Java語言基礎(循環結構for語句的練習之統計思想)
Java語言基礎(循環結構while語句的格式和基本使用)
Java語言基礎(循環結構while語句的練習)
Java語言基礎(循環結構do...while語句的格式和基本使用)
Java語言基礎(循環結構三種循環語句的差別)
Java語言基礎(循環結構注意事項之死循環)
Java語言基礎(循環結構循環嵌套輸出4行5列的星星)
Java語言基礎(循環結構循環嵌套輸出正三角形)
Java語言基礎(循環結構九九乘法表)
Java語言基礎(控制跳轉語句break語句)
Java語言基礎(控制跳轉語句continue語句)
Java語言基礎(控制跳轉語句标号)
Java語言基礎(控制調整語句練習)
Java語言基礎(控制跳轉語句return語句)
Java語言基礎(方法概述和格式說明)
Java語言基礎(方法之求和案例及其調用)
Java語言基礎(方法的注意事項)
Java語言基礎(方法的練習)
Java語言基礎(方法之輸出星形及其調用)
Java語言基礎(方法的練習)
Java語言基礎(方法重載概述和基本使用)
Java語言基礎(方法重載練習比較資料是否相等)
###04.01_Java語言基礎(循環結構概述和for語句的格式及其使用)
A:循環結構的分類
for,while,do...while
B:循環結構for語句的格式:
for(初始化表達式;條件表達式;循環後的操作表達式) {
循環體;
}
C執行流程:
a:執行初始化語句
b:執行判斷條件語句,看其傳回值是true還是false
如果是true,就繼續執行
如果是false,就結束循環
c:執行循環體語句;
d:執行循環後的操作表達式
e:回到B繼續。
D:案例示範
在控制台輸出10次"helloworld"
for (int i = 1;i <= 10 ;i++ ) {
System.out.println("helloworld");
}
###04.02_Java語言基礎(循環結構for語句的練習之擷取資料)
A:案例示範
需求:請在控制台輸出資料1-10
需求:請在控制台輸出資料10-1
for (int i = 1;i <= 10 ;i++ ){
}
System.out.println("-----------------------");
for (int i = 10;i >= 1 ;i-- ) {
System.out.println("i = " + i);
}
B:注意事項
a:判斷條件語句無論簡單還是複雜結果是boolean類型。
b:循環體語句如果是一條語句,大括号可以省略;如果是多條語句,大括号不能省略。建議永遠不要省略。
c:一般來說:有左大括号就沒有分号,有分号就沒有左大括号
###04.03_Java語言基礎(循環結構for語句的練習之求和思想)
A:案例示範
需求:求出1-10之間資料之和
int sum = 0;
for (int i = 1;i <= 10 ;i++ ) {
sum = sum + i;
}
B:練習
需求:求出1-100之間偶數和2550
int sum = 0;
for (int i = 1;i <= 100 ;i++ ) {
if (i % 2 == 0) {
sum = sum + i;
}
}
需求:求出1-100之間奇數和2500
int sum = 0;
for (int i = 1;i <= 100 ;i+=2 ) {
}
###04.04_Java語言基礎(循環結構for語句的練習之水仙花)
A:案例示範
需求:在控制台輸出所有的”水仙花數”Flower
所謂的水仙花數是指一個三位數,其各位數字的立方和等于該數本身。
舉例:153就是一個水仙花數。
153 = 111 + 555 + 333 = 1 + 125 + 27 = 153
分析:
1,100 - 999
2,擷取每一個位數的值,百位,十位,個位
3,判斷各個位上的立方和是否等于這個數,如果等于列印
for (int i = 100;i <= 999 ;i++ ) { //擷取100到999之間的數
//123 % 10
int shi = i / 10 % 10; //12 % 10;
//1 % 10
//153,370,371,407
}
###04.05_Java語言基礎(循環結構for語句的練習之統計思想)
A:案例示範
需求:統計”水仙花數”共有多少個
分析:
1,需要有一個變量記錄住水仙花數的個數
2,擷取到所有的3位數
3,判斷是否滿足水仙花數
4,如果滿足條件,計數器就自增
int count = 0;
for(int i = 100; i<1000; i++) {
ge = i % 10;
shi = i / 10 % 10;
bai = i / 10 / 10;
(ge * ge * ge + shi * shi * shi + bai * bai * bai == i){
out.println(i);
out.println(count);
###04.06_Java語言基礎(循環結構while語句的格式和基本使用)
A:循環結構while語句的格式:
while循環的基本格式:
while(判斷條件語句) {
循環體語句;
}
完整格式:
初始化語句;
while(判斷條件語句) {
循環體語句;
控制條件語句;
}
B:執行流程:
a:執行初始化語句
b:執行判斷條件語句,看其傳回值是true還是false
如果是true,就繼續執行
如果是false,就結束循環
c:執行循環體語句;
d:執行控制條件語句
e:回到B繼續。
C:案例示範
需求:請在控制台輸出資料1-10
int x = 1;
while (x <= 10) {
out.println("x = " + x);
}
###04.07_Java語言基礎(循環結構while語句的練習)
A:求和思想
求1-100之和
int i = 1;
int sum = 0;
while (i <= 100) {
System.out.println(sum);
B:統計思想
統計”水仙花數”共有多少個
int i = 100;
int count = 0;
while (i <= 999) {
ge = i % 10;
shi = i / 10 % 10;
bai = i / 10 /10;
(i == ge * ge * ge + shi * shi * shi + bai * bai * bai) {
count++;
out.println(count);
###04.08_Java語言基礎(循環結構do...while語句的格式和基本使用)
A:循環結構do...while語句的格式:
do {
循環體語句;
}while(判斷條件語句);
完整格式;
初始化語句;
do {
循環體語句;
控制條件語句;
}while(判斷條件語句);
B:執行流程:
a:執行初始化語句
b:執行循環體語句;
c:執行控制條件語句
d:執行判斷條件語句,看其傳回值是true還是false
如果是true,就繼續執行
如果是false,就結束循環
e:回到b繼續。
C:案例示範
需求:請在控制台輸出資料1-10
int i = 1;
do {
out.println("i= " + i);
(i <= 10);
###04.09_Java語言基礎(循環結構三種循環語句的差別)
A:案例示範
三種循環語句的差別:
do...while循環至少執行一次循環體。
而for,while循環必須先判斷條件是否成立,然後決定是否執行循環體語句。
B:案例示範
for循環和while循環的差別:
A:如果你想在循環結束後,繼續使用控制條件的那個變量,用while循環,否則用for循環。不知道用誰就用for循環。因為變量及早的從記憶體中消失,可以提高記憶體的使用效率。
###04.10_Java語言基礎(循環結構注意事項之死循環)
A:一定要注意控制條件語句控制的那個變量的問題,不要弄丢了,否則就容易死循環。
B:兩種最簡單的死循環格式
while(true){...}
for(;;){...}
###04.11_Java語言基礎(循環結構循環嵌套輸出4行5列的星星)
A:案例示範
需求:請輸出一個4行5列的星星()圖案。
注意:
System.out.println("");和System.out.print("");的差別
B:結論:
外循環控制行數,内循環控制列數
for (int i = 1;i <= 4 ;i++ ) { //外循環決定的是行數
(int j = 1;j <= 5 ;j++ ) { //内循環決定的是列數
out.print("*");
out.println();
###04.12_Java語言基礎(循環結構循環嵌套輸出正三角形)
A:案例示範
需求:請輸出下列的形狀
for (int i = 1;i <= 5 ;i++ ) { //外循環決定的是行數
(int j = 1;j <= i ;j++ ) { //内循環決定的是列數
out.print("*");
out.println();
###04.13_Java語言基礎(循環結構九九乘法表)
A:案例示範
需求:在控制台輸出九九乘法表。
B:代碼優化
注意:
'\x' x表示任意,\是轉義符号,這種做法叫轉移字元。
'\t' tab鍵的位置
'\r' 回車
'\n' 換行
'\"'
'\''
for (int i = 1; i <= 9; i++) { // 行數
(int j = 1; j <= i; j++) { // 列數
out.print(j + "*" + i + "=" + (i * j) + "\t");
out.println();
###04.14_Java語言基礎(控制跳轉語句break語句)
A:break的使用場景
隻能在switch和循環中
for (int i = 1; i <= 9; i++) {
(i == 4) {
;
out.println("i = " + i);
}
###04.15_Java語言基礎(控制跳轉語句continue語句)
A:continue的使用場景
隻能在循環中
for (int x = 1; x <= 10; x++) {
(x == 4) {
continue; // 終止本次循環,繼續下次循環
out.println("x = " + x);
###04.16_Java語言基礎(控制跳轉語句标号)
标号:标記某個循環對其控制
标号組成規則:其實就是合法的辨別符
outer: for (int i = 1;i <= 10 ;i++ ) { //a就是标号,隻要是合法的辨別符即可
out.println("i = " + i);
inner: for (int j = 1;j <= 10 ;j++ ) {
out.println("j = " + j);
outer;
}
System.out.println("大家好");
http://www.heima.com
System.out.println("才是真的好");
###04.17_Java語言基礎(控制調整語句練習)
A:練習題
for(int x=1; x<=10; x++) {
if(x%3==0) {
//在此處填寫代碼
}
System.out.println(“Java基礎班”);
}
我想在控制台輸出2次:“Java基礎班“
我想在控制台輸出7次:“Java基礎班“
我想在控制台輸出13次:“Java基礎班“
for(int x=1; x<=10; x++) {
(x%3==0) {
//我想在控制台輸出2次:“Java基礎班“
//我想在控制台輸出7次:“Java基礎班“
System.out.println("Java基礎班");//我想在控制台輸出13次:“Java基礎班“
out.println("Java基礎班");
###04.18_Java語言基礎(控制跳轉語句return語句)
A:return的作用
傳回
其實它的作用不是結束循環的,而是結束方法的。
B:案例示範
return和break以及continue的差別?
return是結束(傳回)方法
break是跳出循環
continue是終止本次循環繼續下次循環
###04.19_Java語言基礎(方法概述和格式說明)
A:為什麼要有方法
提高代碼的複用性
B:什麼是方法
完成特定功能的代碼塊。
C:方法的格式
修飾符 傳回值類型 方法名(參數類型 參數名1,參數類型 參數名2...) {
方法體語句;
return 傳回值;
}
D:方法的格式說明
修飾符:目前就用 public static。
傳回值類型:就是功能結果的資料類型。
方法名:符合命名規則即可。友善我們的調用。
參數:
實際參數:就是實際參與運算的。
形式參數;就是方法定義上的,用于接收實際參數的。
參數類型:就是參數的資料類型
參數名:就是變量名
方法體語句:就是完成功能的代碼。
return:結束方法的。
傳回值:就是功能的結果,由return帶給調用者。
###04.20_Java語言基礎(方法之求和案例及其調用)
A:如何寫一個方法
1,明确傳回值類型
2,明确參數清單
B:案例示範
需求:求兩個資料之和的案例
C:方法調用圖解
###04.21_Java語言基礎(方法的注意事項)
A:方法調用(有具體傳回值)
a:單獨調用,一般來說沒有意義,是以不推薦。
b:輸出調用,但是不夠好。因為我們可能需要針對結果進行進一步的操作。
c:指派調用,推薦方案。
B:案例示範
a:方法不調用不執行
b:方法與方法是平級關系,不能嵌套定義
c:方法定義的時候參數之間用逗号隔開
d:方法調用的時候不用在傳遞資料類型
e:如果方法有明确的傳回值,一定要有return帶回一個值
###04.22_Java語言基礎(方法的練習)
A:案例示範
需求:鍵盤錄入兩個資料,傳回兩個數中的較大值
B:案例示範
需求:鍵盤錄入兩個資料,比較兩個數是否相等
pasting
new Scanner(System.in); // 建立鍵盤錄入對象
System.out.println("請輸入第一個整數:");
int x = sc.nextInt(); // 将鍵盤錄入的整數存儲在x中
System.out.println("請輸入第二個整數:");
int y = sc.nextInt(); // 将鍵盤錄入的整數存儲在y中
// int max = getMax(x,y);
// System.out.println(max);
boolean b = isEquals(x, y);
System.out.println(b);
}
/*
* 傳回連個整數的較大值 1,明确傳回值類型 int 2,明确參數清單 int a,int b
*/
public static int getMax(int a, int b) {
return a > b ? a : b;
}
/*
* 判斷兩個整數是否相等 1,明确傳回值類型 boolean 2,明确參數清單 int a,int b
*/
public static boolean isEquals(int a, int b) { // isEquals 是否相等
return
###04.23_Java語言基礎(方法之輸出星形及其調用)
A:案例示範
需求:根據鍵盤錄入的行數和列數,在控制台輸出星形
B:方法調用:(無傳回值,void)
單獨調用
輸出調用(錯誤)
指派調用(錯誤)
1 public static void main(String[] args) {
2 Scanner sc = new Scanner(System.in); // 建立鍵盤錄入對象
3 System.out.println("請輸入行數:");
4 int row = sc.nextInt(); // 将鍵盤錄入的行數存儲在row中
5 System.out.println("請輸入列數:");
6 int column = sc.nextInt(); // 将鍵盤錄入的列數存儲在column中
7
8 // System.out.println(print(row,column)); //錯誤: 此處不允許使用 '空'
9 // 類型,傳回值是void的方法不能輸出調用
10 // 傳回值是void的方法隻能單獨調用
11 print(row, column);
12 }
13
14 /*
15 * 在控制台輸出矩形星形 1,明确傳回值類型,經分析沒有具體的傳回值類型,void 2,明确參數清單int a,int b
16 */
17
18 public static void print(int a, int b) {
19 for (int i = 1; i <= a; i++) { // 行數
20 for (int j = 1; j <= b; j++) { // 列數
21 System.out.print("*");
22 }
23 System.out.println();
24 }
25 // return ; //如果傳回值類型是void,return可以省略,即使省略系統也會預設給加上,形式是return;
26
###04.24_Java語言基礎(方法的練習)
A:案例示範
需求:根據鍵盤錄入的資料輸出對應的乘法表
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); // 建立鍵盤錄入對象
System.out.println("請錄入一個整數,範圍在1-9之間");
int num = sc.nextInt(); // 将鍵盤錄入的整數存儲在num中
print99(num);
}
/*
* 列印99乘法表 1,傳回值類型void 2,參數清單,int a
*/
public static void print99(int a) {
for (int i = 1; i <= a; i++) { // 行數
for (int j = 1; j <= i; j++) { // 列數
###04.25_Java語言基礎(方法重載概述和基本使用)
A:方法重載概述
求和案例
2個整數
3個整數
4個整數
B:方法重載:
在同一個類中,方法名相同,參數清單不同。與傳回值類型無關。
參數清單不同:
A:參數個數不同
B:參數類型不同
C:參數的順序不同(算重載,但是在開發中不用)
1 public static void main(String[] args) {
2 double sum1 = add(10, 20.1);
3 System.out.println(sum1);
4
5 int sum2 = add(10, 20, 30);
6 System.out.println(sum2);
7
8 double sum3 = add(12.3, 13);
9 System.out.println(sum3);
10 }
11 /*
12 * 求兩個整數的和
13 * 1,傳回值類型int
14 * 2,參數清單 int a,double b
15 */
16 public static double add(int a, double b) {
17 return a + b;
18 }
19 /*
20 * 求三個整數的和
21 * 1,傳回值類型int
22 * 2,參數清單 int a,int b,int c
23 */
24 public static int add(int a, int b, int c) {
25 return a + b + c;
26 }
27 /*
28 * 求兩個小數的和
29 * 1,傳回值類型double
30 * 2,參數清單 double a,int b
31 */
32 public static double add(double a, int b) {
33 return a + b;
34
###04.26_Java語言基礎(方法重載練習比較資料是否相等)
A:案例示範
需求:比較兩個資料是否相等。
參數類型分别為兩個int類型,兩個double類型,并在main方法中進行測試
###04.27_day04總結
把今天的知識點總結一遍。
###04.28_day04 作業
1:for循環的格式?要能看懂執行流程。
用for循環完成如下案例
求和
求偶數和
求奇數和
列印水仙花數
統計水仙花數
九九乘法表
2:while循環的格式?要能看懂執行流程
用while循環完成如下案例
求和
紙張折疊成珠穆朗瑪峰高度的次數
3:break,continue和return分别有什麼用?
4:函數的概念?函數的格式?格式的解釋說明
5:函數的調用
A:明确傳回值類型的函數調用
B:void類型的函數調用
6:函數的練習:
A:求兩個資料之和
B:判斷兩個資料是否相等
C:擷取兩個數中較大的值
D:列印m行n列的星形矩形