4.2 定义函数的两个明确

最后更新于:2022-04-01 14:10:33

这一节我们学习在实际开发中如何定义一个函数,也就是如何定义一个功能. 要定义一个功能,就要用两个明确来完成: 明确一:这个功能的结果是什么; 明确二:这个功能实现过程中是否需要未知内容参与运算. 我们直接看下面代码: ~~~ class FunctionDemo2 //两个明确 { public static void main(String[] args) { int num = 65; System.out.println(num+"分对应的等级:"+getLevel(num)); print99(); } /* 需求1:定义一个功能,完成两个整数的和的获取 思路: 既然定义功能,就是可以用函数来实现 如何定义一个函数呢? 通过两个明确来完成 明确一:这个功能的结果是什么? 是和,是功能的结果,所以该功能的返回值类型是int 其实就是在明确函数的返回值类型 明确二:这个功能实现过程是否需要未知内容参与运算? 有,加数和被加数,这就是函数的参数列表(参数的个数+参数的类型) 其实就明确参数列表 */ public static int add(int a,int b) { return a+b; } /* 需求2:定义一个功能,画一个矩形在控制台 思路: 明确一:这个功能的结果是什么? 没有结果,直接打印到控制台,并未返回给调用者,用void表示 明确二:这个功能实现过程是否需要未知内容参与运算? 有,行和列不确定.两个整数int */ public static void draw(int row,int col) { for(int x=1;x<=row;x++) { for(int y=1;y<=col;y++) { System.out.print("*"); } System.out.println(); } } /* 需求3:定义一个功能,比较两个数年是否相等 思路: 明确一:这个功能的结果是什么? 有,比较结果boolean 明确二:这个功能实现过程是否需要未知内容参与运算? 有,两个整数 */ public static boolean equals(int a,int b) { /* if(a==b) return true; else return false; */ //(a==b)?true:false; return a==b; } /* 需求4:定义一个功能,获取两个数中较大的数 思路: 明确一:这个功能的结果是什么? 有,两个整数中较大的数 明确二:这个功能实现过程是否需要未知内容参与运算? 有,参与比较的两个参数 */ public static int getMax(int a,int b) { /*if(a>b) return a; else return b; */ return (a>b)?a:b; } /* 需求5:定义一个功能,打印99乘法表 思路: 明确一:这个功能的结果是什么? 没有,直接在控制台输出99乘法表 明确二:这个功能实现过程是否需要未知内容参与运算? 没有 */ public static void print99() { for(int x=1;x<=9;x++) { for(int y=1;y<=x;y++) { System.out.print(y+""+x+"="+y*x+"\t"); } System.out.println(); } } /* 需求6:根据考试成绩获取学生分数对应的等级 90~100 A 80~89 B 70~79 C 60~69 D 60以下 E 思路: 明确一:这个功能的结果是什么? 有,返回等级char 明确二:这个功能实现过程是否需要未知内容参与运算? 有,学生的分数int */ public static char getLevel(int num) { if(num>=90&&num<100) return 'A'; else if(num>=80&&num<89) return 'B'; else if(num>=70&&num<79) return 'C'; else if(num>=60&&num<69) return 'D'; else return 'E'; } } ~~~ 我们在上面的几个不同功能中都运用了两个明确来分析,实现不同的功能.
';