* 封装提高安全性,为其设置业务逻辑
方法作用,便于调用与维护,好处:提供代码重用性,提高执行效率,方便调用,提高可读性
* 什么是方法:方法就是就是将一堆需要重复执行的代码封装起来,
* 如果程序需要用到这段代码时,我们直接调用方法即可
* 把一个方法比喻成榨汁机,需要材料:水果
* 产出物:果汁
* 程序的方法:参数(材料)进入方法的数据
* 返回值(产出物):方法根据参数处理后的结果
*
* 如何定义一个方法
* 访问权限: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;
}
}