* 封裝提高安全性,爲其設置業務邏輯
方法作用,便於調用與維護,好處:提供代碼重用性,提高執行效率,方便調用,提高可讀性
* 什麼是方法:方法就是就是將一堆需要重複執行的代碼封裝起來,
* 如果程序需要用到這段代碼時,我們直接調用方法即可
* 把一個方法比喻成榨汁機,需要材料:水果
* 產出物:果汁
* 程序的方法:參數(材料)進入方法的數據
* 返回值(產出物):方法根據參數處理後的結果
*
* 如何定義一個方法
* 訪問權限:public ,protected ,private訪問修飾符
*[static]可加可不加
*即:
*訪問修飾符 [static] 方法返回值 方法名 (參數類型 參數名){
* 代碼塊;
* return 返回值;
* }
* 訪問修飾符;常用的:public 格式是固定的,
* static:靜態的,可加可不加
* 方法返回值類型:方法最終產生的結果是什麼類型
* 方法名 :自己定義的名字
* 參數類型:進入方法的數據是什麼類型的
* 代碼塊:自己封裝的邏輯代碼
* return(1) 把方法處理的結果返回給調用者(2)結束當前方法
* 返回值:方法調用的最終結果
* 一個方法裏面不可以定義一個方法,但可以調用別的方法,方法定義在類下面
有參方法:
public class Demo1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//定義變量接收返回值,變量類型要與方法類型一致
int result=sum(1,4);//靜態方法裏只能調用靜態方法和靜態變量,調用方法時實參要與形參一致
System.out.println(result);
//
}
//計算a+b的和
/*
* 有返回值,類型可爲整數或小數
* 方法名
* 參數 int a,int b
*/
public static int sum(int a,int b) {//形參接收外部傳入的數據
return a+b;
}
}
方法實現數組逆序
package Funcation;
public class Demo6 {
//使用方法實現數組逆序
public static void main(String[] args) {
// TODO Auto-generated method stub
String[] a= {"李白","杜甫","白居易"};
String[] m=back(a);
for(int i=0;i<a.length;i++) {
System.out.println(m[i]);
}
}
public static String[] back(String[] str) {
String[] m=new String[str.length];
String b;
int j=0;
for(int i=0;i<str.length;i++ ) {
System.out.println(str[str.length-i-1]);
m[j++]=str[str.length-i-1];
}
return m;
}
}
方法求最大值
package Funcation;
public class Demo5 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] a= {2,3,5,6,7};
int max=max(a);
System.out.println("最大值爲:"+max);
}
public static int max(int[] a) {
int max=0;
for(int i=0;i<a.length;i++) {
if(max<a[i])
max=a[i];
}
return max;
}
}
方法實現冒泡排序
package Funcation;
public class Demo4 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr1=new int[]{12,45,23,89,2,90};
int[] arr2=sort(arr1);
for(int a :arr2) {
System.out.print(a+" ");
}
}
public static int[] sort(int[] arr) {
int m=0;
for(int i=0;i<arr.length-1;i++) {
//內層循環,一趟比較了幾次
for(int j=0;j<arr.length-1-i;j++) {
//從小到大用大於
if(arr[j]<arr[j+1]) {
m=arr[j];
arr[j]=arr[j+1];
arr[j+1]=m;
}
}
}
return arr;
}
}
方法求圓面積
package Funcation;
public class Demo3 {
//計算圓的面積
final static double PI=3.14;//static只是靜態變量,但加final後其爲最終,即爲常量,若定義方法,則不能被繼承
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("圓的面積:"+circle(6));
}
public static double circle(int radius) {
return radius*radius*PI;
}
}