目录
方法是一段可以重复调用的代码段,可以提高代码的复用率
方法作用域:
- public:公共的,可以和 static 一起使用
- static:静态的,该关键字修饰的方法可以被 main() 方法直接调用
- private:私有方法,没有 private static 方法
返回值类型:
- 方法运行产生的数据可以通过 return 返回,如果没有返回值,返回值类型为 void
- 返回值类型由 return 决定,可以是任意 Java 数据类型(基本数据类型或引用数据类型)
参数列表:
- 完成功能需要参考的数据,如果不需要参考数据,()里面可以为空
- 参数包括类型和名称,多个参数的时候用 , 隔开
方法调用:
- 方法名称(实际参数)
- 数据类型 变量名称 = 方法名称(实际参数)
- main() 方法也是一个方法,Java程序的入口,由JVM调用
- 自定义的方法不调用不会运行
数组方法调用:
public class ArrMethodTest{
//方法:返回数组中元素的最小值
public static int getMin(int[] arr){
int min = arr[0];
for(int i=1;i<arr.length;i++){
if(arr[i]<min){
min = arr[i];
}
}
return min;
}
public static void main(String args[]){
//调用方法
int[] arr = {5,4,7,2,8};
int min = getMin(arr); //直接写数组名称
System.out.println("min="+min);
}
}
布尔参数方法调用:
public class BoolMethodTest{
//方法:计算某年是否是闰年
public static boolean isLeapYear(int year){
boolean flag;
if(year%4==0 && year%100!=0 || year%400==0){
flag=true; // ture表示是闰年
}else{
flag=false;
}
return flag;
}
public static void main(String args[]){
//调用方法
int year = 2025;
boolean flag = isLeapYear(year);
System.out.println(year+(flag?"是闰年":"不是闰年"));
}
}
静态方法调用:
public class StaticMethodTest{
//输出 hello
public static void printInfo(){
char[] arr = {'h','e','l','l','o'};
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]);
}
System.out.println();
}
public static void main(String args[]){
//调用静态方法
printInfo();
}
}
多参数方法调用:
public class DoubleMethodTest{
//定义方法:计算商品总价
public static double getTotal(double price,int num){
double total = price*num;
return total; //返回total的值,并结束方法 注意total类型和返回值类型相同
}
public static void main(String args[]){
//调用方法
getTotal(5.8,1); //方法名称(实际参数)
double total = getTotal(5.8,1); //数据类型 变量名称 = 方法名称(实际参数) 注意:数据类型和方法返回值类型相同
System.out.println("total="+total);
System.out.println(getTotal(3.5,2)); //直接输出方法的返回值
}
}