Java Stream从列表列表到集合

时间:2019-09-02 09:08:58

标签: java arraylist java-8 java-stream

我有一个List<List<String>>如何使用Java 8流来迭代并将其存储到Set中?

我正在尝试一些方法,但是无法完全编译

List <List<String>> itemLists = ...
    Set <String> codes = itemLists.stream()
    .flatMap(itemList - > {
        items.stream()
        .collect(Collectors.toSet());
    });

2 个答案:

答案 0 :(得分:4)

您可以这样做:

mainEntityOfPage

答案 1 :(得分:4)

func compare(a1: [Any?], a2: [Any?]) -> Bool { guard a1.count == a2.count else { return false } func compare<T: Equatable>(obj1: Any, _ obj2: Any, t: T.Type) -> Bool { return obj1 as? T == obj2 as? T } return a1.indices.reduce(true) { guard let _a1 = a1[$1], let _a2 = a2[$1] else { return $0 && a1[$1] == nil && a2[$1] == nil } switch $1 { case 0: return $0 && compare(obj1: _a1, _a2, t: Int.self) case 1: return $0 && compare(obj1: _a1, _a2, t: String.self) case 2: return $0 && compare(obj1: _a1, _a2, t: <#TypeOfObjectAtIndex2#>.self) default: return false } } }

仅使用一次
flatMap()