黑马程序员—java 函数
来源:互联网 发布:阿里云cdn网站加速 编辑:程序博客网 时间:2024/05/06 01:04
——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-
1.定义:指在类中的具有特定功能的一段小程序,也称为方法。
2.格式:修饰符 返回值类型 函数名{参数类型 形式参数1,参数类型 形式参数2,…) (注:参数是有顺序的。)
{
执行语句;
return 返回值;
}
3.名词解释:
返回值类型:函数运行后的结果的数据类型。
参数类型:是形式参数的数据类型。
形式参数:是一个变量,用于存储调用函数时传递给函数的实际参数。
实际参数:传递给形式参数的具体数值。
return:用于结束函数。
返回值:该值会返回给调用者。
4.补充:
定义函数可以将功能代码进行封装,便于进行复用。
函数只有被调用才会被执行。
对于函数没有具体返回值的情况,返回值类型常用关键字void表示,那么该函数中的return语句如果在最后一行可以忽略不写。
函数只能调用函数,不能在函数内定义函数。定义函数时,函数的结果应该返回给调用者,交由调用者处理。
5.如何定义一个函数呢?
1.既然函数是一个独立的功能,那么该功能的运算结果是什么,要明确好。
2.在明确该功能的过程中是否需要其他未知的内容参与运算?
需求1:
定义一个功能,实现两个整数变量的和.
分析:
1.明确功能的结果,是一个整数的和。
2.在实现该功能的过程中有未知内容进行参与运算。
其实这两个就是在明确函数的定义。
1.是在明确函数的返回值类型。
2.明确函数的参数列表(参与的类型和个数)
代码:class Hanshu{ public static void main (String[] args) { boolean x =compare(0,0); System.out.println(x); } public static boolean compare(int a,int b) { /*if(a==b) return true; else return false; return (a==b)?true:false;*/ return a==b; }}
运行结果:
需求2:
定义一个功能,实现判断两个数/字符大小,获取较大的数/字符。
1、明确功能的结果是整数 int/char 类型。
2、在实现功能的过程中有未知内容进行参与运算。
代码:class Hanshu{ public static void main (String[] args) { char x =getMax('a','A'); System.out.println(x); //输出结果是字符a,因为a的ASCII值97大于A的ASCII值65。 } public static char getMax(char a,char b) { return (a>b)?a:b; }}
运行结果:
需求3:
定义一个功能函数,打印九九乘法表。
思路:
1.确定结果,没有,因为直接打印,所以返回值类型是void。
2.有未知内容么?有,两个。
代码:class Hanshu{ public static void main(String[] args) { print99(); } public static void print99(int num) //如果要打印一部分口诀就会调用这个函数。 { for (int x=1; x<=num; x++) { for (int y=1; y<=x; y++) { System.out.print(y+"*"+x+"="+y*x+"\t"); } System.out.println(); } } 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(); //为了优化代码,可以直接调用上面代码。print99(9)。 } print99(9); } }
运行结果:
6.函数重载(Overload):在同一个类中允许存在一个以上的同名函数,只要他们的参数个数和参数类型不同即可。
特点:与返回值类型无关,只看参数列表。
优点:方便于阅读,优化了程序设计。
小练习:
void show(int a, char b, double c){}
判断以下函数和给定函数是否重载?
1.void show(int x, char y, double z){} 没有,因为参数类型和原函数一样,变量可以随意命名的。
2.int show(int a, double b, char c){} 重载,参数类型不同,参数是有顺序的,和返回值类型无关。
3.void show(int a, double c,char b){} 同上。
4.boolean show(int a, char b){} 重载,参数个数不同。
5.void show(double c){} 同上
6.double show(int x, char y, double z){} 没有,参数一致。
作用:
什么时候用重载,当定义的功能相同,但是参与运算的未知内容不同。
那么,这时就定义一个函数名称以表示功能,方便阅读,而通过参数列表的不同来区分多个重名函数。
需求:
设计两个函数,实现两个整数,三个整数相加求和的功能。
代码:class Hanshu{ public static void main(String[] args) { int sum=add(2,4); System.out.println("sum="+sum); int sum1 =add(3,4,6); System.out.println("sum1="+sum1); } public static int add(int x,int y) //参数列表和下面个数不同,类型都是int相同,可以重名。 { return x+y; } public static int add(int x, int y,int z) { return x+y+z; //可以优化成add(x,y)+z . }}
运行结果:
——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-
- 黑马程序员—java 函数
- 黑马程序员:java函数
- 黑马程序员笔记——Java函数
- 黑马程序员——java基础:函数
- 黑马程序员——Java函数、数组
- 黑马程序员——Java函数/调用
- 黑马程序员—Java基础—函数
- 黑马程序员—JAVA基础知识之函数
- 黑马程序员—JAVA主函数
- 黑马程序员—Java的函数
- 黑马程序员JAVA基础-函数
- 黑马程序员 java入门:函数
- 黑马程序员-----java函数总结*
- 黑马程序员---java基础----函数
- 黑马程序员 java构造函数
- 黑马程序员—java面向对象和java函数
- 黑马程序员——Java基础——语句,函数
- 黑马程序员——Java基础知识——语句、函数
- IOS内购错误汇总及解决方案
- 英文中那些唯美的词汇
- Android学习笔记--Handler消息传递机制(Handler实现自动播放动画)
- Hibernate入门篇(一)——Hibernate简介
- 数据挖掘算法--聚类分析
- 黑马程序员—java 函数
- 让Windows Server 2008 + IIS 7+ ASP.NET 支持10万并发请求
- Unable to compile class for JSP
- 江西余干:端午龙舟赛引冲突 官方否认有人被打死
- DeepID人脸识别算法之三代
- 如何判断一个数是不是完全平方数
- 这题实在不知道起啥名好了
- Mac OS X 系统配置 Apache+MySql+PHP 详细教程
- eclipse java文件 不提示代码