欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

Java可变个数形参的方法实例代码

时间:2023-02-27 10:34:35|栏目:JAVA代码|点击:

前言

小小知识,不值一提,了解了也不能让你提高身价,但是不了解你就是比别人少知道点!事儿就是这么个事儿,直接正题吧! 直接看代码

演示

优先级

当方法1无参和方法2有参存在时,执行上面的main方法调用并观看结果:

当只有可变参数方法存在时,再重新执行看看

多个参数传参情况

一是多个参数逗号隔开传参

二是直接可以传数组

总结

①调用的时候参数可不传或传多个

②如果有无参或者有可数个参数的重载方法存在时,调用同名方法时,可变参数方法的优先级靠后,没有其他重载方法,则自动调用可变参数方法

③与形参类型相同的数组直接不能构成重载,可以认为,可变参数代替了数组参数

④在参数方法的形参中,可变个数形参必须声明在末尾,并且最多只能声明一个可变形参

另外:

简单测试代码

package com.liu.susu.other;

/**
 * 可变形参方法
 *   注意:①调用的时候参数可不传或传多个
 *        ②如果有无参或者有可数个参数的重载方法存在时,调用同名方法时,可变参数方法的优先级靠后,
 *          没有其他重载方法,则自动调用可变参数方法
 *        ③与形参类型相同的数组直接不能构成重载,可以认为,可变参数代替了数组参数
 *        ④在参数方法的形参中,可变个数形参必须声明在末尾,并且最多只能声明一个可变形参
 */
public class Test {
    public static void main(String[] args) {
        Test t = new Test();
//        t.playGames();
//        t.playGames("麦兜");
        t.playGames("麦兜","贝塔","酥妮");
        t.playGames(new String[]{"点点","阿苔"});
    }
    //1.无参方法
    public void playGames(){
        System.out.println("playGames()");
    }
    //2.有一个参数方法
    public void playGames(String name){
        System.out.println(name+"-->playGames(String name)");
    }
    //3.可变形参方法
    public void playGames(String ... name){
        System.out.println("playGames(String ... name)");
        for (int i = 0; i < name.length; i++) {
            System.out.println(name[i]+"--->加入游戏……");
        }
    }
    /**
     * 4.--|在参数方法的形参中,可变个数形参必须声明在末尾,并且最多只能声明一个可变形参
     *   --|可变形参参数的类型不要与前面类型一致,比如下面的dogNum的类型尽量不要用String,
     *     --|①是意义不大,②是在调用时与上面第3方法冲突,不知道调的哪个
     */
    public void playGames(int dogNum,String ... name){
        System.out.println("playGames(String dogNum,String ... name)");
    }
//    public void playGames(String[] name){
//
//    }
}

上一篇:Netty分布式ByteBuf缓冲区分配器源码解析

栏    目:JAVA代码

下一篇:SpringBoot中@ConfigurationProperties 配置绑定

本文标题:Java可变个数形参的方法实例代码

本文地址:http://www.codeinn.net/misctech/226561.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有