簡體   English   中英

Java8列表 <T> 列出 <object[]>

[英]Java8 list<T> to list<object[]>

如何使用流解析泛型到Object []? 我有

private static <T> List<Object[]> selectData(List<T> a,
    Predicate<T> predicate) {
    ArrayList<Object[]> tmp = new ArrayList<Object[]>();
    for (T x : a) {
      if (predicate.test(x)) {
        tmp.add(new Object[] { x });
      }
    }   
return tmp;
}

但我想做這樣的事情:

...//    
return a.stream().filter(predicate).collect(Collectors.toList());

但我不知道如何將每個元素轉換為Object []

您可以簡單地使用map函數來做到這一點:

return a.stream()
    .filter(predicate)
    .map(o -> new Object[] { (Object) o })
    .collect(Collectors.toList());

map “映射”的流,以給定的函數的其結果的每個元素,從而使后調用所有流中的元素是映射函數返回的類型(在這種情況下的Object[]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM