20220722-Java可变参数
Java可变参数总结
来源:B站韩顺平老师的Java入门教学
代码示例如下:
public void f(String str,int... nums){ 方法体; }
代码示例如下:
public class VarParameterExercise { public static void main(String[] args) { Method mc = new Method(); int[] a = {}; mc.showScore("han", a); mc.showScore("zhang", 10, 20); mc.showScore("wang", 100, 200, 300); mc.showScore("li", 1000, 2000, 3000, 4000, 5000); } } class Method { public void showScore(String name, int... score) { int res = 0; for (int i = 0; i < score.length; i++) { res += score[i]; } System.out.println(name + " " + res); } }
注意事项:
- 可变参数实际上是语法糖,内部实现为数组
- 方法中可变参数只有有一个,且需要放在形参的最后一个,即可变参数前边可以有其他非可变参数
- 调用方法时,优先匹配固定参数方法(对于存在方法重载的时候)
- 调用方法时,可变参数列表可以为0个或者多个,也可以传入数组,但不可以传入null
- 对可变参数进行操作时,与操作数组一致,可变参数变量名即可视为数组名
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具