Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 制作ArrayList<;LinkedList<;字符串>&燃气轮机;变成一个难以忍受的人_Java_Iterator - Fatal编程技术网

Java 制作ArrayList<;LinkedList<;字符串>&燃气轮机;变成一个难以忍受的人

Java 制作ArrayList<;LinkedList<;字符串>&燃气轮机;变成一个难以忍受的人,java,iterator,Java,Iterator,我有一个ArrayList,我想为所有LinkedList创建一个Iterator 最好的方法是什么 我发现: 'final Iterable<Integer> all = Iterables.unmodifiableIterable( Iterables.concat(first, second, third));' “最终可编辑全部”= 不可修改的( Iterables.concat(第一,第二,第三));' 但是我有很多LinkedLists。我能做些什么来合并

我有一个
ArrayList
,我想为所有
LinkedList
创建一个
Iterator

最好的方法是什么

我发现:

  'final Iterable<Integer> all =
  Iterables.unmodifiableIterable(
  Iterables.concat(first, second, third));'
“最终可编辑全部”=
不可修改的(
Iterables.concat(第一,第二,第三));'
但是我有很多
LinkedList
s。我能做些什么来合并所有这些


谢谢

不清楚您是否只想使用标准Java类来实现这一点,但如果是这样,您可以从Java 8开始这样做:

ArrayList<LinkedList<String>> strings = /* ... */;
Iterator<String> i = strings.stream().flatMap(l -> l.stream()).iterator();
ArrayList字符串=/*…*/;
迭代器i=strings.stream().flatMap(l->l.stream()).Iterator();
一个简单的解决方案

    ArrayList<LinkedList<String>> l1 = ...
    List<String> l2 = new ArrayList<>();
    for(List<String> e : l1) {
        l2.addAll(e);
    }
ArrayList l1=。。。
列表l2=新的ArrayList();
对于(列表e:l1){
l2.addAll(e);
}

使用番石榴的
ListMultimap
我需要更多的Java方式。我不能使用这个库。嗯,番石榴是一个Java库……你的Iterables不是已经是番石榴的Iterables了吗?为什么在你的问题标题中,你写了
,但在你的代码中,你用了“?@Kent是对的,
Iterables
是番石榴。所以,用番石榴吧!