Пример #1
0
  @Test
  public void testForEachPair() {
    final List<Pair> pairs = new ArrayList<Pair>();
    OpenShortDoubleHashMap map = new OpenShortDoubleHashMap();
    map.put((short) 11, (double) 22);
    map.put((short) 12, (double) 23);
    map.put((short) 13, (double) 24);
    map.put((short) 14, (double) 25);
    map.removeKey((short) 13);
    map.forEachPair(
        new ShortDoubleProcedure() {

          @Override
          public boolean apply(short first, double second) {
            pairs.add(new Pair(first, second));
            return true;
          }
        });

    Collections.sort(pairs);
    assertEquals(3, pairs.size());
    assertEquals((short) 11, pairs.get(0).k);
    assertEquals((double) 22, pairs.get(0).v, (double) 0.000001);
    assertEquals((short) 12, pairs.get(1).k);
    assertEquals((double) 23, pairs.get(1).v, (double) 0.000001);
    assertEquals((short) 14, pairs.get(2).k);
    assertEquals((double) 25, pairs.get(2).v, (double) 0.000001);

    pairs.clear();
    map.forEachPair(
        new ShortDoubleProcedure() {
          int count = 0;

          @Override
          public boolean apply(short first, double second) {
            pairs.add(new Pair(first, second));
            count++;
            return count < 2;
          }
        });

    assertEquals(2, pairs.size());
  }