如何在 Java 中设置列​​表<List<String>>

How to set a List<List<String>> in Java

我有以下变量:

List<List<String>> selection = Lists.newArrayList();

在我完成添加以填充 selections

之后

我想使用 .set 函数修改其中一个条目,如下所示:

selection.set(10, "modifiedentry");

但是我在提供字符串而不是列表时遇到错误

如何在我的案例中提供列表?

你可以在每个列表中设置一个值

selection.forEach(element -> element.set(10, "modifiedentry"));

要设置一个元素的值,您可以这样做

selection.get(0).set(10, "modifiedentry");

通常在执行以下操作时:

List<List<String>> selection = new ArrayList<>();
selection.set(10, "modifiedentry");
  • 您需要将列表而不是字符串添加到 selection
selection.add(List.of("modifiedentry"));

如果要使添加的列表可变,请在添加之前将其传递给 ArrayList<>() 构造函数。

selection.add(new ArrayList<>(List.of("modifiedentry")));

您不能 set 在特定索引处,除非该索引已经包含一个元素。

  • 所以如果选择是空的,你不能做
selection.set(10,List.of("modifiedentry"));

除非项目 0 到 10 存在。你会得到一个 IndexOutOfBoundsException

你的列表是字符串类型的列表。因此,要修改一个值,您必须在方法 set()

的第二个参数中输入字符串列表
selection.set(10, Arrays.asList(new String [] {"modifiedentry"}));