读书人

关于JAVA 五可变参数

发布时间: 2012-11-10 10:48:50 作者: rapoo

关于JAVA 5可变参数

最近在用Arrays的asList()生成的List时,List元素的个数时而不正确。

?

?

输出结果为:

传递char数组:内容:[[C@defa1a]数组长度:1 直接传递:内容:[a, b, c, d, e]数组长度:5 ----------------------------传递int数组:内容:[[I@f5da06]数组长度:1 直接传递:内容:[1, 2, 3, 4, 5, 6, 7]数组长度:7 ----------------------------传递Integer数组:内容:[1, 2, 3, 4, 5, 6, 7]数组长度:7 直接传递:内容:[1, 2, 3, 4, 5, 6, 7]数组长度:7 ----------------------------传递String数组:内容:[a, b, c, d, e]数组长度:5 直接传递:内容:[a, b, c, d, e]数组长度:5 ----------------------------

java 5 可变参数,直接传递值与传递数组处理的机制不太相同。

?

如果直接传递数组,基本类型数组将被视为一个对象而不会被解析成数组,如果直接传递参数将能正常解析。因此传递基本类型数组时强烈建议转为其封装类对象的数组 ?int ->Integer ,long->Long …………。

?

读书人网 >编程

热点推荐