一: 流程控制
(1)順序結構:
(2)選擇結構: if 、 if else 、 if else if else if else switch case。
(3)迴圈結構:for while do...while
練習: 列印***
*******
*****
for(int i=1;i<=5;i++)
system.out.println();
}
112
1231234
12345
for(int i=1;i<=5;i++)
system.out.println();
}
***** 1 5
**** 2 4
*** 3 3
** 4 2
*
//第一種
for(int i=1;i<=5;i++)
system.out.println();
}//第二種
for(int i=1;i<=5;i++)
system.out.println("");
}
分析: 空格和行的關係 星號和行的關係:
____* 1 4 1
___** 2 3 2
__*** 3 2 3
_**** 4 1 4
*****
結論: 列印的圖形: 尖朝上,通常改變內層迴圈的條件。
尖朝下,通過改變內層迴圈的變數的初始值,迴圈條件不變
for(int i=1;i<=5;i++)
for(int y=1;y<=i;y++)
system.out.println();
}
*****
****
*****
*
for(int i=1;i<=5;i++)
for(int x=i;x<=5; x++ )
system.out.println();
}
* 1 3 1 3
*** 2 2 3 2
***** 3 1 5 1
*******
*****
***
*
for(int i=1;i<=7;i++) else
system.out.println();
}
*
* *
* *
* *
* *
* **
for(int i=1;i<=7;i++) else
system.out.println();
}}
二: 方法:
需求: num* 5+1
1:定義: 完成某乙個功能的**段的集合。給一段**命名。
然後通過方法的名稱來訪問該方法。
2:方法的定義語法:
public static void 方法名稱([引數列表])
訪問許可權修飾符 [修飾符] 返回值 方法名稱([引數列表])
解釋:
public: 訪問許可權修飾符。 公共的,共有的。
static: 表示靜態的。 靜態的方法通過類名直接呼叫。 math.abs();
void :代表沒有返回值。
方法的名稱: 自定義,遵循識別符號的規則和規範。 從第二個單詞的首字母開始,大寫。
() 引數列表: 引數列表,需要的時候傳遞,不需要的時候,不傳遞。
引數在定義的時候不需要給出具體的值,而是給出具體的型別。引數,是乙個形式上的引數,
所以稱之為形式引數,簡稱形參。
定義功能時,如果需要多個引數,那麼多個引數之間使用逗號間隔。
方法體: 自定義、
如果方法需要定義成具有返回值的:那麼需要在方法當中將計算的結果,通過return關鍵字返回。
方法的返回值型別,應該定義成和結果相同或者是相相容的型別。
3:方法的呼叫:
呼叫方式:
(1)類名.方法名稱("引數");
a:在主方法當中可以通過類名.方法名的方法呼叫自定義方法。
如果是呼叫本類的靜態方法,類名可以省略。
b:如果自定的方法當中定義了形式引數,那麼在呼叫該方法的時候,需要傳遞
乙個實際的引數,來替代形式引數。 傳遞的引數是乙個實際的值。稱之為實參。
c: 呼叫方法傳遞實參的時候,傳遞的實參必須要跟形參的型別相同或者是相相容。
需求: 定義乙個功能: 完成兩個數的和
public static void add(int a,int b)
定義乙個功能: 完成求兩個double型別的數的和。
public static void add(double a,double b)
定義乙個功能: 列印九九乘法表:
public static void print99()
} }
定義乙個功能:求三個數的最小值。
public static int getmin(int a,int b,int c)
定義乙個功能: 求乙個數的絕對值。
public static int getabs(int a)
定義乙個功能: 列印菱形 (傳遞乙個int的數,列印響應的行數 4)
public static void printrhombus(int a)
for(int i=1;i<=a;i++) else
system.out.println();
}}
定義功能:求三角形的周長和面積。
//求三角形的周長
public static double getlength(double a,double b,double c)
//求三角形的面積
public static void printsqur(double a,double b,double c)
else
system.out.println("不能組成乙個三角形!");
} else
system.out.println("請輸入正數!");
}
4:方法的優點:
a: 可以將**進行封裝,就可以實現**的復用。
b: 使**更加具有模組化。
三:return 關鍵字:
(1)作用一:用在具有返回值的方法當中,將方法運算的結果,返回。返回結果的型別必須要跟定義的型別相同或者是相相容。
作用二:表示該方法結束。
(2)用在無返回值的方法當中。 表示方法執行到此處結束。 如果不手動新增,在方法的末尾,
系統會自動給新增。 通常不需要手動新增。
三: 方法的過載(面試):
1:定義:方法的過載: 在乙個類當中,允許定義同名的方法,但是方法的引數列表不同。 列表不同
表現在引數的個數和引數的型別不同。 這樣的方法稱之為過載的方法。
要點: 方法名稱相同。
引數不同。 個數和型別不同。
和返回值沒有關係。
2: 過載方法的呼叫:
虛擬機會根據傳遞實參的個數和型別,去匹配最合適最相近的方法呼叫。
3:判斷下列哪些方法構成方法的過載:
void show(int a,char b, double c);
a:void show( int b, char a ,double c);// 不構成, 完全一樣。
b:int show(int a,char b, double c) // 不構成。與返回值沒有關係。
c:void show( char a, int b. double c); // 構成:引數的型別不同。
d:boolean show(int b,char c);// 構成。引數的列表的個數不同。f
e:void show(double d);//構成
f: void show();//構成
e:double show(int a,char b, double c);// 不構成。
4:什麼情況下定義方法的過載?
當方法完成的功能相似或者是相近時, 但是參與運算的引數的個位或者是型別不同時,可以定義
方法的過載。
Java學習第六天
1,迴圈就是重複執行某部分 常用的有for迴圈和while迴圈 2,迴圈由三部分組成,迴圈條件,迴圈體,迴圈變數 3,for迴圈中,先判斷迴圈變數滿不滿足條件,滿足就執行迴圈體,迴圈體執行一次後,對變數做個變化,繼續判斷滿不滿足條件 for 變數 變數是否滿足 迴圈體執行一次後對變數操作 4,whi...
Java學習第六天
優點 復用 程式結構清晰 如何寫方法 無參,無返回值 有參,無返回值 無參,有返回值 有參,有返回值 引數 形參 宣告方法時在方法頭宣告的變數,可以有任意個 作用 接收呼叫者傳遞給方法體的資料的 實參 呼叫方法時,使用的引數 作用 把資料傳遞給 複製後 形參 注意 呼叫時實參和形參一定要一一對應 返...
第六天學習
變數的作用域 區域性變數 在函式內部定義的變數,這個變數只能在函式內部使用,在全域性當中不能使用。使用就報錯了。全域性變數 在函式外部定義的變數,這個變數可以在全域性使用。但是我們一般不推薦使用全域性變數 因為可能會意外的修改掉變數的值。迫不得已不要用全域性變數 衝突處理原則 就近原則。而不是從上到...