可变参数之auto-boxing
来源:互联网 发布:avmoo最新域名2016 3 编辑:程序博客网 时间:2024/06/08 20:12
章节:Initialization & Cleanup > Array initialization > Variable argument lists
以下程序会报错:
public class OverloadingVarargs2 { static void f(float i, Character... args) { System.out.println("first"); } static void f(Character... args) { System.out.print("second"); } public static void main(String[] args) { f(1, ‘a’); f(‘a’, ‘b’); }}f('a', 'b')无法匹配。原因不得而知(char类型可以转换为float,也可以auto-boxing为Character,但无法在二者间做出选择?)
改为一下则可以通过编译:
public class OverloadingVarargs3 { static void f(float i, Character... args) { System.out.println("first"); } static void f(char c, Character... args) { System.out.println("second"); } public static void main(String[] args) { f(1, 'a'); f('a', 'b'); }}因此,作者给出了如下建议:
You should generally only use a variable argument list on one version of an overloaded method. Or consider not doing it at all.
0 0
- 可变参数之auto-boxing
- java中的auto-boxing/unboxing
- Java之可变参数
- 反射之可变参数
- Java之可变参数
- java之可变参数
- Java之可变参数
- 打包/解包 Auto-boxing/unboxing
- java1.5之可变参数
- c语言之可变参数
- JAVA之可变参数类型
- JDK1.5 之 可变参数
- java开发之可变参数
- java知识点之可变参数
- Object-C 之 可变参数
- C语言之可变参数
- java学习之可变参数
- python函数参数之_可变参数
- 将算术表达式由中序表达式转为后序表达式
- Java IO流
- Java的错误类型
- 配置Spark standalone集群启动
- 一段解析字符串中单词的C语言小程序
- 可变参数之auto-boxing
- C#.NET系列(一):入门,关于C#.NET以及类与命名空间的简介
- 内核对新板子的支持
- 面试题目,金融行业交易金额小写转换为大写的方法,我写的几个版本
- pip常用命令
- iOS 8.0新特性之指纹解锁
- 喵哈哈村的狼人杀大战(5)
- 推荐系统问题总结
- css奇偶选择器 nth-child