java 反向映射,如何使用lambdas實現反向映射Java?
在這個例子中,我將這個列表累加到LinkedList。
LinkedList實(shí)現(xiàn)了Deque(雙端隊(duì)列),它允許我以後進(jìn)先出(LIFO)順序追加項(xiàng)目。
我使用LinkedList :: addFirst在collect方法中執(zhí)行累加,將LinkedList中的項(xiàng)目讀入列表頭部。
public static void main(final String... args) {
final List objList = Arrays.asList("1", "2", "3", "4", "5", "6", "7");
final List reversed = objList.stream()
.collect(LinkedList::new, LinkedList::addFirst, LinkedList::addAll);
//[7, 6, 5, 4, 3, 2, 1]
System.out.println(reversed);
}
下面的解決方案是好的,但我不喜歡關(guān)閉原來的列表。
public static void main(final String... args) {
final List objList = Arrays.asList("1", "2", "3", "4", "5", "6", "7");
final List reversed = IntStream.range(-(objList.size() - 1), 1)
.mapToObj(i -> objList.get(-i))
.collect(Collectors.toList());
//[7, 6, 5, 4, 3, 2, 1]
System.out.println(reversed);
}
總結(jié)
以上是生活随笔為你收集整理的java 反向映射,如何使用lambdas實現反向映射Java?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 雷军:小米 12S Ultra 手机 2
- 下一篇: matlab火箭升空问题,困扰火箭的三大