java基础(4)(方法的定义格式,调用方式,使用,参数设置,方法重载等)

什么是方法?

方法(method)是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集
方法的使用

需求:打印扑克牌,如下形式:

 

首先需要定义两个数字组,一个用来存字母和数字,一个用来存花色和大小王。

    String[] number = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
    String[] colors = {"黑桃","红桃","方块","梅花","大王","小王"};

再定义两个循环,外循环来控制花色,内循环来控制字母和数字

    for (int i = 0; i < colors.length; i++) {
    for (int i1 = 0; i1 < number.length; i1++) {

还得在外循环下做一个判断,不会大王和小王会像上面的一样输出

 

判断外层循环到大王或者小王直接输出大王和小王,内循环不在循环

    if (colors[i]=="大王" || colors[i]=="小王"){
        System.out.print(colors[i] + " ");
    }

这样就完成了输出要求,完整代码如下:

    String[] number = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
    String[] colors = {"黑桃","红桃","方块","梅花","大王","小王"};
    for (int i = 0; i < colors.length; i++) {
        if (colors[i]=="大王" || colors[i]=="小王"){
            System.out.print(colors[i] + " ");
        }else {
            for (int i1 = 0; i1 < number.length; i1++) {
                System.out.print(colors[i] + number[i1] + " ");
            }
        }
        System.out.println();
    }

为了让让代码得到复用,下面的循环我们可以写成方法的形式,这样看起来会更加简洁。

    /**
     * @Describe
     * @Author Double LiFly
     * @date 2021/4/7 14:27
     */
    public class TestMethod0503 {
        public static void main(String[] args) {
            String[] number = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
            String[] colors = {"黑桃","红桃","方块","梅花","大王","小王"};
            print(number,colors);
        }
     
        /**
         * 打印扑克牌
         * @param number 数字和字母数组
         * @param colors 花色和大小王数组
         */
        public static void print(String[]number,String[] colors){
            for (int i = 0; i < colors.length; i++) {
                if (colors[i]=="大王" || colors[i]=="小王"){
                    System.out.print(colors[i] + " ");
                }else {
                    for (int i1 = 0; i1 < number.length; i1++) {
                        System.out.print(colors[i] + number[i1] + " ");
                    }
                }
                System.out.println();
            }
        }
    }

方法的定义格式

方法的定义我们可以参照main方法来写:

    public static void main (String[] args){}
    修饰符 返回值类型 方法名(参数列表){
        //代码省略...
        return 结果;
    }

修饰符:public static固定写法

返回值类型:表示方法运行的结果的数据类型,方法执行后将结果返回到调用者

参数列表:方法在运算过程中的未知数据,调用者调用方法时传递

return:将方法执行后的结果带给调用者,方法执行到return,整体方法运行结束

定义方法的两个明确:

明确参数列表:该方法在完成一个功能时,需要的参数有几个,参数的类型是什么,需要我们 明确给出

明确返回值类型:方法的功能完成之后,是否有返回值,如果有,使用return将结果返回给调用者。
无参数类型,无返回值

    /**
     * @Describe 打印十次HelloWorld
     * @Author Double LiFly
     * @date 2021/4/7 13:57
     */
    public class MethodCase01 {
        public static void main(String[] args) {
            printHelloWorld();
        }
        /**
         * 参数类型:无
         * 返回值类型:直接打印输出,无需返回值
         */
        public static void printHelloWorld(){
            for (int i = 0; i < 10; i++) {
                System.out.println("HelloWorld");
            }
        }
    }

无参数类型,有返回值

    /**
     * @Describe
     * @Author Double LiFly
     * @date 2021/4/7 14:05
     */
    public class MethodCase05 {
        public static void main(String[] args) {
            System.out.println(getSum());
        }
        /**
         * 计算1-100之和
         * @return 结果返回给调用者
         */
        public static int getSum(){
            int sum = 0;
            for (int i = 1; i <= 100; i++) {
                sum+=i;
            }
            return sum;
        }
    }

有参数类型,无返回值

    /**
     * @Describe
     * @Author Double LiFly
     * @date 2021/4/7 13:59
     */
    public class MethodCase02 {
        public static void main(String[] args) {
            printHelloWorld(20);
        }
        /**
         * 无返回值类型,有参数类型
         * @param i
         */
        public static void printHelloWorld(int i) {
            for (int j = 0; j < i; j++) {
                System.out.println("HelloWorld");
            }
        }
    }

有参数类型,有返回值类型

   

 /**
     * @Describe
     * @Author Double LiFly
     * @date 2021/4/7 13:57
     */
    public class MethodCase03 {
        public static void main(String[] args) {
           getSum(10,20);
            System.out.println(getSum(20,23));
        }
        /**
         * 返回值类型为int 返回两数之和
         * @param i 第一个数
         * @param i1 第二个数
         * @return 返回两数之和
         */
        public static int getSum(int i, int i1) {
            int sum = i+i1;
            return sum;
        }
    }

定义方法注意事项

    定义位置:类中方法外,不能嵌套定义(例如main方法中不能定义方法,可以调用方法)
    方法必须先定义,再使用
    void表示无返回值,可以省略return,也可以单独书写 return;
    不能在return后面写代码,return意味着方法结束,所有后面的代码永远都不会执行,属于无效代码
    定义方法时()中的参数,我们称之为:形式参数,在调用方法时传递的参数,成为:实际参数

调用方法的三种形式

   1. 直接调用:直接写方法名调用

 

2.赋值调用:调用方法,在方法前面定义变量,接收方法返回值
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值