黑马程序员技术交流社区

标题: 一个可变参数的疑惑~~~ [打印本页]

作者: 张小庆    时间: 2012-4-9 12:19
标题: 一个可变参数的疑惑~~~


如果我改为下面这个,编译就通不过。
class KeBian
{
        public static void main(String[] args)
        {
                show('a','b',2,3,4);
        }
        public static void show(char[] ch,int... arr)
        {
                System.out.println(arr);
        }
}
作者: 邓海涛    时间: 2012-4-9 12:23
show('a','b',2,3,4);这里是四个参数
而 public static void show(char[] ch,int... arr)两个参数
所以肯定不能通过


作者: 邓海涛    时间: 2012-4-9 12:30
public static void show(char[] ch,int... arr)
你的里面如果是char[]的话,编译在编译的过程中会把ch里面的内容拆开成散的元素,所以这就是为什么编译错误的原因,
int型的就可以,因为编译器会把它当成一个Object类型来处理,不会将他打散。
作者: 程旦    时间: 2012-4-9 12:36
你定义的参数是一个字符  当然只能接受一个字符了  不能接收字符数组
作者: 张小庆    时间: 2012-4-9 16:53
哦了,谢谢大家了
作者: 蒙武辉    时间: 2012-4-9 17:16
数组传递的是地址所以效率比较高
作者: pray    时间: 2014-4-26 07:46
LZ先生您好,您寄来的充气娃娃我们已经给您修好了,马上给您寄回去,但请您以后别那么残暴地对待她,她毕竟只是个娃娃,当她被寄来时,所有在场的工作人员都哭了  




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2