方法

方法的学习

方法的基本概念

  • 方法的定义:解决一个问题具体的流程。

  • 方法的意义

    • 提高代码的可重用性

    • 增强代码的可维护性

    • 增强代码的可读性

      方法的定义

#main
public static void main(String[] args){ 方法体;  }

  

  • 方法五要素:

    • 方法的访问控制修饰符 public static

    • 方法的返回值类型 void

    • 方法的名称 main

    • 方法的参数 String[] args

    • 方法体 大括号里面的内容

  • 定义无参数无返回值的方法

public static void sayHello( ){
    System.out.println("你们好,请问你们现在做了几轮核酸");
}

     定义有参数无返回值的方法

public static void main(String[] args) {
		// 调用方法
//		getArea(4);
//		//半径为5
//		getArea(5);
		getRectArea(8, 4);
		
	}
	//是一个有参数无返回值的方法
	public static void getArea(double r){
		double circleArea = Math.PI*r*r;
		System.out.println("圆的面积为:"+circleArea);
	}
	
	//求长方形的面积
	public static void getRectArea(double l,double w){
		double area = l*w;
		System.out.println("长方形的面积为:"+area);
	}

  定义一个有参数有返回值的方法

public static void main(String[] args) {
		//求半径为2的圆和长为8宽为4的长方形的总面积为多少?
		//1.得到圆的面积
		double circleArea = getArea(2);
		//2.得到长方形的面积
		double rectArea = getRectArea(8, 4);
		//3.求总面积  
		double totalArea = circleArea+rectArea;
		System.out.println("总面积为:"+totalArea);
	}
	//此时该方法应该是一个有参数有返回值的方法
	public static double getArea(double r){
		double circleArea = Math.PI*r*r;
		return circleArea;
	}
	//求长方形的面积  有参数有返回值的方法
	public static double getRectArea(double l,double w){
		double rectArea = l*w;
		return rectArea;
	}

  定义一个有返回值无参数的方法

/**
 * 求100以内能被8整除的最大整数
 */
public class Demo4 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int max = getNum();
		System.out.println(max);
	}
	public static int getNum(){
		int i=100;
		for(;i>0;--i){
			if(i%8==0){
				//break关键字是用于结束这个for循环
				break;
			}
		}
		//返回i的值
		return i;
	}
}

  

方法的调用

当用户自定义好了方法之后,必须要在main方法当中调用该方法,才会被执行

  • 格式: 方法名( );

值传递和引用传递

  • 当基本数据类型变量作为参数时,传递的是数组,当引用数据类型(如数组)变量作为参数时,传递的是地址。

public class Demo5 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int i = 100;
		changeNum(i);
		System.out.println(i);
		
		//传递的是一个数组呢?
		int [] ages = {1,2,3};
		System.out.println(ages);
		changeNum1(ages);
		System.out.println(ages[0]);
	}
	
	public static void changeNum(int i){
		i = 200;
	}
	public static void changeNum1(int[] arr){
		//将数组中的第一个元素修改为100
		arr[0] = 100;
	}

}

  

posted @ 2022-04-09 15:51  神仙白小五  阅读(168)  评论(0)    收藏  举报