以前、リストの順序に従った「ペア」を順序。。。ということで
リストから順序を維持した Pair を作成する - Oboe吹きプログラマの黙示録
を書いた
でも java.util.AbstractMap.SimpleEntry の方が一般的で、そして、2つのペアリストを
各ペアの比較をする場合、、
List<String, String> alist; List<String> blist;
List<SimpleEntry<String, String>> list = new ArrayList<>(); for(ListIterator<String> it=alist.listIterator(1);it.hasNext();){ list.add(new SimpleEntry<>(alist.get(it.nextIndex()-1), it.next())); } for(ListIterator<String> it=blist.listIterator(1);it.hasNext();){ SimpleEntry<String, String> other = new SimpleEntry<>(blist.get(it.nextIndex()-1), it.next()); list.stream().forEach(e->{ // TODO 各ペアの比較 System.out.println(other.getKey() + "-" + other.getValue() + " : " + e.getKey() + "-" + e.getValue()); }); }
ペア、グルーピングということでは、以下も書いていた。。
Combination の計算する程のことのない単純なペアの処理 - Oboe吹きプログラマの黙示録