09.Java中的方法调用(有具体返回值类型的方法和没有具体返回值类型的方法)--改进版

例如:物大战僵尸里面豌豆芽发射炮弹,可能需要编写100行代码, 植物大战僵尸里面

        每一个关卡都有豌豆芽发射炮弹,为了代码的调用简单,给100行代码使用{}包起来,

        并且为之起一个名字(符合标识符的规则)(方法名),那么以后只要用到豌豆芽发射炮

        弹这个功能,直接调用方法名.

(1)方法: 就是使用{}代码块包起来,并且起一个名字.

(2)定义方法的格式:
    有具体返回值类型的方法的定义

     (a)固定格式
             public static 返回值类型 方法名(参数类型1 变量名1,参数类型2 变量名2....){
                    方法中的业务逻辑代码...
                    return 结果;    
             }

    (b)详细介绍:public: 访问权限足够大,公共的
                        static: 静态修饰符(面向对象中讲)
                        返回值类型:就是数据类型
                        方法名:  (小驼峰命名法)
                        参数类型:第一个参数的数据类型
                        变量名:符合 (小驼峰命名法)

    (c)有具体返回值类型的方法的调用:
        单独调用(不用它)
        输出调用:不建议:【因为直接输出,想使用这个结果值进行操作就不可以了】
        赋值调用:推荐

(3)方法定义的注意事项

        (a)方法和方法是平级关系,无法进行嵌套(不允许一个方法中定义另一个方法)。

          (b)   在Java中,定义方法的形式参数必须携带数据类型(Java是一个强类型语言)。

          (c)   调用方法的时候,传递的实际参数不需要在携带数据类型了。 

          (d)   定义方法的时候,有{}括号的地方不能有分号;

(4)示例:

class FunctionDemo{
	public static void main(String[] args){
			
			//实际参数:要么键盘录入要么直接定义
			int a = 30 ;
			int b = 20 ;	
			赋值调用
			int result = sum(a,b) ;
			System.out.println(result) ;
	}
	
	/*
		 public static 返回值类型 方法名(参数类型1 变量名1,参数类型2 变量名2....){
					
					方法中的业务逻辑代码...
					return 结果;
				 
			 }
			定义两个数据之和的功能时候,
			
			两个明确
				1)明确返回值类型:int
				2)明确参数类型以及参数个数
					int类型 2个参数
	*/
	public static int sum(int a,int b){//形式参数
		
			int result = a + b;//30+20
			return result ;
		
			//return firstNum+secondNum ;
	}
}

(5)借鉴讲师的图解————————(感谢!!!!!!!!!!!)

二.没有具体返回值类型的方法的定义以及调用

(1)没有具体返回值类型的方法的定义:

针对某个功能代码块{} 没有具体的返回值类型,按照语法规定:必须有一个值
Java提供了一个关键字:代替没有具体返回值类型 void 

(2)固定格式:

        public static void 方法名(形式参数列表){
                     方法体中的内容:直接输出 或者进行其他操作;(不需要return语句了)
                   }

 (3)没有具体返回值类型的方法调用
      (a)单独调用:只能单独调用
        (b)   输出调用:不行
        (c)   赋值调用:不行

   (4)示例:在控制台输出4行5列的*形

import java.util.Scanner;
class WuJuTiFanHuiZhi{
	
	public static void main(String[] args){ 
		
		//创建键盘录入对象
		Scanner sc = new Scanner(System.in) ;
		//录入
		System.out.println("请输入一个行数m:");
		int m = sc.nextInt() ;
		
		System.out.println("请输入一个列数n:");
		int n = sc.nextInt() ;
		
		//单独调用
		printStar(m,n) ;
	}
	
	/*
		定义这样一个方法:输出4行5列的*形
		两个明确:
			1)明确返回值类型:没有具体返回值类型:使用void代替
			
			2)明确参数类型以及参数个数
				两个参数:行数和列数, 都是int类型
	*/
	public static void printStar(int m,int n){
		//4行5列的* 代码
		for(int x = 0 ;x <m ; x ++){
			for(int y = 0 ; y < n ; y ++){
				System.out.print("*") ;
			}
			System.out.println() ;
		}
	}
}


    


    

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值