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){////}}
【Java可变个数形参的方法实例代码】到此这篇关于Java可变个数形参的文章就介绍到这了,更多相关Java可变个数形参内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- Java|Java 设计模式以虹猫蓝兔的故事讲解建造者模式
- 技术·教程|Javascript中遇到的问题: 缓动动画函数的封装
- Java毕业设计项目实战篇|Java项目:YY酒店管理系统(java+JSP+Easyui+Echars+ssm+mysql)
- web前端基础学习笔记|web前端学习649-654(JavaScript作用域---作用域,变量的作用域,作用域链)
- 蓝桥杯|2021年 第12届 蓝桥杯 Java B组 省赛真题详解及小结【第1场省赛 2021.04.18】
- 蓝桥杯|2021年 第12届 蓝桥杯 Java B组 省赛真题详解及小结【第2场省赛 2021.05.09】
- javaScript---js动画
- javascript|JavaScript之setTimeout与setInterval的用法与区别
- javascript|原生JavaScript运动功能系列(一)(运动功能剖析与匀速运动实现)
- jquery|JavaScript之jQuery学习三部曲【下篇】