猿问

省略号(…)是什么?在这个方法中签名?

省略号(…)是什么?在这个方法中签名?

APP引擎文档,省略号是什么?JID...)在这个方法中签名?

public MessageBuilder withRecipientJids(JID... recipientJids)

这三个点的作用是什么?


红颜莎娜
浏览 520回答 3
3回答

潇湘沐

使用省略或瓦拉格方法内部就好像是一个数组:public void PrintWithEllipsis(String...setOfStrings) {     for (String s : setOfStrings)         System.out.println(s);}此方法可按以下方式调用:obj.PrintWithEllipsis(); // prints nothingobj.PrintWithEllipsis("first"); // prints "first"obj.PrintWithEllipsis("first", "second"); // prints "first\nsecond"内PrintWithEllipsis,类型setOfStrings是一个字符串数组。这样您就可以为编译器节省一些工作,并传递一个数组:String[] argsVar = {"first", "second"};obj.PrintWithEllipsis(argsVar);为瓦拉格方法,将序列参数视为相同类型的数组。因此,如果两个签名仅在其中一个声明序列而另一个声明数组中不同,如本例所示:void process(String[] s){}void process(String...s){}然后出现编译时错误。资料来源:Java编程语言技术术语为variable arity parameter而不是普通术语varargs.
随时随地看视频慕课网APP

相关分类

Java
我要回答