定义有具体返回值类型的方法的定义的注意事项:
1)方法和方法平级关系,不能嵌套使用!
特殊:方法递归(IO流后面讲):方法调用方法本身的一种现象!
2)定义方法注意两个明确
明确返回值类型
明确参数类型以及参数个数
3)定义方法的时候:
参数类型必须携带的!
public static int add(x,y){} 错误的:
因为Java是一种强类型语言:语法非常严谨的,以及格式是有要求的!
4)定义方法的时候,()后面不要出现; (目前来说没意义的方法!)
5)调用方法的时候,实际参数不需要携带数据类型
classDemo{publicstaticvoidmain(String[] args){//定义两个变量//实际参数int x =10;int y =20;//调用方法的时候,实际参数不需要携带数据类型//int result = add(int x,int y) ;//错误写法int result =add(x,y);
System.out.println("两个数据之和是:"+result);}//定义两个数据求和的功能:默认int类型publicstaticintadd(int x,int y){//形参需要携带数据类型return x + y ;}}
classDemo{publicstaticvoidmain(String[] args){//固定格式//打印4行5列的* for(int x =0; x <4; x ++){//行数for(int y =0; y <5; y ++){//列数
System.out.print("*");}
System.out.println();}
System.out.println("---------------------");//赋值调用//void result = printStar(5,6) ;非法的表达式开始//System.out.println(printStar(5,6)) ;//单独调用printStar(5,6);
System.out.println("---------------------");printStar(9,9);}/*
将上面n行n列的*形 方法改进
public static void 方法名(形式参数类型1 变量名1,形式参数类型2 变量名2...){
直接输出语句或者其他业务操作;
}
两个明确:
1)明确返回值类型: 没有具体返回值类型---使用 void代替
2)明确参数类型以及参数个数
int类型 2个
*/publicstaticvoidprintStar(int m,int n){//m:行数,n表示列数for(int x =0; x < m; x ++){for(int y =0; y < n ; y ++){
System.out.print("*");}
System.out.println();}}}
3.没有有返回值类型的方法的使用
import java.util.Scanner ;classDemo{publicstaticvoidmain(String[] args){//键盘录入两个数据,求两个数据中的最大值//创建键盘录入对象
Scanner sc =newScanner(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);
System.out.println("-------------------------------");//键盘录入两个数据,比较两个数据是否相等//分析:结果:相等:true,不相等:false
System.out.println("请输入第一个数据:");int firstNum = sc.nextInt();
System.out.println("请输入第二个数据:");int secNum = sc.nextInt();//调用方法boolean flag =compare(firstNum,secNum);
System.out.println("flag:"+flag);}/*
键盘录入两个数据,比较两个数据是否相等
两个明确:
1)明确返回值类型:boolean类型
2)明确参数类型以及参数个数
int类型,2个参数
*/publicstaticbooleancompare(int a,int b){//形参//简写方式//return a==b ; //== :比较两个数据值是否相等! ==return(a==b)?true:false;}/*
定义方法:
两个明确
1)明确返回值类型: int
2)明确参数类型以及参数个数
int类型,两个参数
*///方式1:三元运算符publicstaticintgetMax(int a,int b){//比较a和b的最大值 return(a > b)? a: b ;}//方式2:if...else 语句publicstaticintgetMax2(int a,int b){//定义max变量int max ;if(a> b){
max = a ;}else{
max = b ;}return max ;}}