有什么方法可以在线声明一个数组?

有什么方法可以在线声明一个数组?

假设我有一个方法m(),它将一个字符串数组作为参数。有没有办法在拨打电话时能够在线声明这个数组?即代替:

String[] strs = {"blah", "hey", "yo"};m(strs);

我可以用一行替换它,并避免声明一个我永远不会使用的命名变量吗?


SMILET
浏览 406回答 3
3回答

慕斯709654

m(new String[]{"blah", "hey", "yo"});

湖上湖

守护进程是正确的。您也可以声明m为varargs:void m(String... strs) {    // strs is seen as a normal String[] inside the method}m("blah", "hey", "yo"); // no [] or {} needed; each string is a separate arg here

侃侃无极

您可以直接在现代Java中编写数组,而无需使用初始化程序。您的示例现在有效。通常最好为参数命名。String[] array = {"blah", "hey", "yo"};要么int[] array = {1, 2, 3};如果必须内联,则需要声明类型:functionCall(new String[]{"blah", "hey", "yo"});或使用varargs(变量参数)void functionCall(String...stringArray) {     // Becomes a String[] containing any number of items or empty}functionCall("blah", "hey", "yo");但愿Java的开发人员将能够在隐式初始化未来
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java