栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java代码模块化-方法method

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java代码模块化-方法method

Java代码模块化-方法method 1.method的概念

Java方法的目的:模块化、复用性、应用简单

2.结构 3.语法
public satatic int add(int a,int b,int c){
int sum = a+b+c;
return sum;
}
  • public :访问控制符
  • static : 静态//!!!
  • int /double/void:放大的返回类型
  • add:方法的名称
  • int a,int b:参数列表
  • 大括号:作用域
4.常见语法错误有
  • 方法中不能其那套其他方法
  • 方法设计中有返回类型,方法体中没有返回!!!(注意)
  • 作用域-大括号
  • void不用返回,用void就要再方法里打印好,用int/double等才要在main里面打印出来
5. 放大的形参和实参

形参就是形式参数

(int a ,int b); //a,b为方法的形参–形式上二点参数可以任意名称
int x = add(4,6)//4和6为方法的实参,a=4,b=6

6方法-重载(overload) 6.1 概念

如果同一个class中包含了两个或者两个以上方法名相同但方法参数的个数、顺序或类型不同的方法,则称为方法的重载,也可称方法被重载了。

6.2 方法重载的目的

类中复用方法的名称,避免大量额方法名称命名

例如:

	public static int add(int a) {// 重载只和参数类型、数量、顺序有关
		return a;
	}

	public static int add(int a, int b) {
		return a + b;
	}

	public static double add(double a, double b) {
		return a + b;
	}

	public static int add(double a, int b) {
		return (int) (a + b);
	}
6.3 方法重载的必要条件
  • 在同一个类中
  • method名称完全相同
  • method的参数类型或者数量不同
7 不定参数 7.1 不定参数目的

当大量重载方法时,影响程序的阅读使用。
不顶参数的本质是传入数组,但允许调用者随意传入参数个数,使用更灵活

7.2 不定参数定义

public void func(类型 …形参名称){
//编译器在运行是将传入实参,转换为数组执行
}

public static void main(String[] args) {
		func(1,2,4,2,3,4,121,213);//用法:()中可以写任意数量数字

	}
public static void func(int ... a  ){
   for(int i=0;i < a.length;i++){
       System.out.print(a[i] + "t");
   }  
}
8 方法-常见案例 8.1 定义一个方法完成年份是否闰年的判定
public static boolean isLeap(int year){//返回值是boolean注意!!!
    if(year % 400 == 0 || year % 4 == 0 && year % 100 != 0){
	   return true;
    }
    return false;
}
8.1 定义一个方法完成判定n是否为素数
public static boolean isPrimer(int n){
    
    for(int i =2; i<=Math.sqrt(n);i++){//math.squrt(n)就是根号下n的意思
        if(n % i ==0) return false;
    }
    return true;
}
9 方法-递归 9.1概念

递归算法(recursion algorithm):在计算机科学中指一种通过重复将问题分解为同类的子问题而解决的方法。

9.2 递归的执行流程
  • 1找出递归的中止条件
  • 2找出解决递归的通项公式
9.3 递归的案例

案例1 累乘

public static int f(int n){
    if(n==1) return 1;  //递归终止条件
    return n * f(n-1); //一般表达式
}

案例2 斐波拉且数列

	 
	public static void fib01(int n) {
		int n1 = 1;
		int n2 = 1;
		for(int i= 3;i<=n;i++) {//int i = 3,意思是从第三项开始; i++,不是n++!!!!看清楚
			int x = n1+n2;
			System.out.print(x+"t");
			n1=n2;
			n2=x;
			
		}
	}
	
	public static int fib02(int n) {
		if (n == 1 || n == 2) {//斐波拉契数列的第一项和第二项都是1
			return 1;
		}
		return f(n - 1) + f(n - 2);
	}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/583153.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号