1:函数的概念、格式、格式的解释说明
函数的概念:在java中,我们把函数叫方法,其他语言:javascript 方法称之为函数: function add()函数的格式:
权限修饰符 返回值类型 方法名(数据类型1 参数名1,数据类型2 参数名2....){//小括号里面:形式参数列表
return 结果;
格式的解释说明:
权限修饰符:public + static(静态修饰) :暂时先这样写权限修饰符
返回类型:最终计算的结果是什么样的数据类型: (结果是什么数据类型,就用该该类型去接收结果)
方法名:就是给这个功能的代码块起名字:命名规则:一个单词字母全小写;多个单词:第一个单词小写,第二个单词开始首字母大写
形式参数列表:形式参数的数据类型(四类八种) 形式参数名(变量名)
return:在方法中出线,表示带回一个结果
2:函数的调用
A:明确返回值类型的函数调用1)方法和方法是平级关系,不能将一个方法写到main主程序入口里面
2)方法不调用不执行
3)在main方中去调用其他方法的时候,实际参数不用再给数据类型了,否则报错
4)定义方法的时候:形式参数必须带上数据类型,否则报错
5)方法定义完毕:(有返回值类型的方法:返回具体的结果:否则不写return:编译不通过)
6)定义方法:有左大括号的地方不能有分号,有分号的地方不能有做大括号!
B:void类型的函数调用
单独调用
输出调用
赋值调用
针对没有返回值类型的方法,没有return,因为直接在控制台输出
3.函数练习
package 函数的练习;
import java.util.Scanner;
/*
* 题目C:
* 获取两个数中较大的值
*/
public class FoucationHome3 {
public static void main(String[] args){
//创建键盘录入对象
Scanner sc=new Scanner(System.in);
//接收并录入数据
System.out.println("请输入第一个数据:");
int a=sc.nextInt();
System.out.println("请输入第二个数据:");
int b=sc.nextInt();
//赋值调用
int max = getMax(a, b) ;
System.out.println("max:"+max);
}
/*
* 两个明确
* 明确返回值类型:int
* 明确参数类型和个数:int,2个
*/
public static int getMax(int a,int b){
if(a>b){
return a;
}else{
return b;
}
}
import java.util.Scanner;
/*
* 题目C:
* 获取两个数中较大的值
*/
public class FoucationHome3 {
public static void main(String[] args){
//创建键盘录入对象
Scanner sc=new Scanner(System.in);
//接收并录入数据
System.out.println("请输入第一个数据:");
int a=sc.nextInt();
System.out.println("请输入第二个数据:");
int b=sc.nextInt();
//赋值调用
int max = getMax(a, b) ;
System.out.println("max:"+max);
}
/*
* 两个明确
* 明确返回值类型:int
* 明确参数类型和个数:int,2个
*/
public static int getMax(int a,int b){
if(a>b){
return a;
}else{
return b;
}
}
4:函数重载
方法重载(Overload):在同一个类中,出现相同的方法名,参数列表不同,它与返回值没有关系参数列表不同:
1)参数个数不同
2)参数的数据类型不同
public class FunctionDemo4 {
public static void main(String[] args) {
//jvm根据不同的方法区调用不同的参数
//输出调用
System.out.println(sum(22,33));
System.out.println(sum(22,33,44));
System.out.println(sum(22,33,44,55));
System.out.println(sum(12.34F,3.14F));
}
/*
* 求两个数据之和的方法
* */
public static int sum(int a,int b){
return a + b;
}
/*
* 求三个数据之和:
* */
// public static int sum1(int a,int b,int c){
// return a + b + c ;
// }
public static int sum(int a,int b,int c){
return a+b+c;
}
/*
* 求四个数据之和:
* */
// public static int sum2(int a,int b,int c, int d){
// return a+ b + c+ d;
// }
public static int sum(int a,int b, int c, int d){
return a+ b+ c+d ;
}
public static float sum(float a,float b){
return a + b ;
}
}