-----------android培训、java培训、java学习型技术博客、期待与您交流!------------
函数
1. 定义:Java中,函数也叫方法,是具有特定功能的一段独立小程序。
2.格式 :修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2)
{
执行语句;
return 返回值;
}
返回值类型:函数运行后的结果的数据类型。
参数类型:形式参数的数据类型。
形式参数:是一个变量,用于存储调用函数时传给函数的实际参数。
实际参数:传递给形式参数的具体值。
return:用于结束函数。
返回值:该值会返回给调用者。
3.函数的特点
a,定义函数可以将功能代码进行封装
b,便于对该功能进行复用
c, 函数只有被调用才会被执行
d,函数的出现提高了代码的复用性
e,对于函数没有具体返回知道情况,返回值类型用关键字void表示,那么该函数中的return语句如果在在最后一行可以省略不写。
注意:a,函数中只能调用函数,不可以在函数内部定义函数。
b,定义函数式,函数的结果应该返回给调用者,交由调用者处理。
4.函数的应用
如何定义一个函数?
a,既然函数式一个独立的功能,那么该功能的运算结果是什么要先明确。(明确功能的返回值类型)
b,再明确在定义该功能的过程中是否需要未知的内容(变量)参与运算。(明确函数的参数列表(参数的类型和个数))
5.函数的一个重要特性——重载(override)
概念:在同一个类中,允许存在一个以上的同名函数,只要它们的参数列表的个数或者参数类型不同即可。
特点:与返回值类型无关,只看参数列表。
好处:方便于阅读,优化了程序设计。
示例:
//返回两个整数的和
int add(int x,int y){return x+y;}
//返回三个整数的和
int add(int x,int y,int z){returnx+y+z;}
//返回两个小数的和
double add(double x,double y){return x+y;}
什么时候用到重载?
当定义的功能相同,但参与运算的未知内容不同。那么,这时就定义一个函数名称以表示起功能,方便阅读,而通过参数列表的不同来区分多个同名函数。
练习:
1 /* 2 需求:客户可以打印出九九乘法表,可以按照自己想法决定打印到第几行。不输入的话默认打印全部。 并且客户也可以打印一个长方形,并且定义长和宽。 3 思路:1.定义三个函数。一个控制九九乘法表的行数,一个全部打印九九乘法表。 定义一个控制长和宽的函数。 4 2.九九乘法表需要定义一个参数列表,默认的那个九九乘法表没有参数列表,长方形需要两个参数列表。 5 */ 6 class Function 7 { 8 public static void main(String[] args) 9 { 10 print99(); 11 juxing(4,6); 12 } 13 public static void print99(int num) 14 { 15 if(num<=0||num>9) 16 { 17 System.out.println("您的要求超出了九九乘法表所能显示的范围,请重新输入,输入范围1~9!"); 18 } 19 else 20 { 21 for (int x=1;x<=num ;x++ ) 22 { 23 for (int y=1;y<=x ;y++ ) 24 { 25 System.out.print(y+"*"+x+"="+y*x+"\t"); 26 } 27 System.out.println(); 28 29 } 30 31 } 32 System.out.println("-------------------------------"); 33 return; 34 } 35 public static void print99() 36 { 37 //因为是打印全部,可以把9输入进去调用上面的函数 38 print99(9); 39 return; 40 } 41 public static void juxing(int chang,int kuan) 42 { 43 for (int x=1;x<=chang ;x++ ) 44 { 45 for(int y=1;y<=kuan;y++) 46 { 47 System.out.print("*"); 48 } 49 System.out.println(); 50 } 51 } 52 }
运行结果: