【问题标题】:How can I pass List in my method parameter?如何在我的方法参数中传递 List?
【发布时间】:2016-11-19 20:53:12
【问题描述】:

有人可以解释如何定义一个列表参数,以便我可以将一个列表传递给它。我的方法看起来像这样。我需要替换 LIST,以便该方法将“listname”识别为列表。

public static void function(int number, LIST listname) {
  for (int i = 0; i < listname.size(); ++i {
    System.out.print(listname.get(i) + ": ");
  }
  System.out.println(number);
}

在我的主要方法中,我将调用该方法:

List<String> myList = new ArrayList<String>();
  myList.add("item1");
  myList.add("item2");
  myList.add("item3");

function(4, myList);

【问题讨论】:

  • 我不明白这个问题。你需要知道用什么类型代替LISTdoubles 的数组是干什么用的?
  • @wakjah 是的。那是正确的。我删除了一些代码只是为了让我的问题更切题。
  • 您需要将LIST 替换为List&lt;String&gt; 的类型——与您已经在调用代码中编写的类型相同。请注意,您的 for 循环中还缺少 )(尽管解析器应该告诉您这一点)
  • 我认为List&lt;?&gt; 也可以,因为所有对象都支持toString()
  • 你已经将它定义为一个List

标签: java list arraylist methods


【解决方案1】:

将方法定义更改为如下内容

public static void function(int number, List<String> listname) {
  for (int i = 0; i < listname.size(); ++i) {
    System.out.print(listname.get(i) + ": ");
  }
  System.out.println(number);
}

【讨论】:

  • 增强的 for 循环会更惯用
【解决方案2】:

类型应该是List&lt;String&gt;,Java 中没有标准的 LIST 类型(当然,除非你这样做)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多