Package edu.umd.cloud9.util.array

Examples of edu.umd.cloud9.util.array.ArrayListOfDoubles


  public void testClone() {
    int size = 100000;
    Random r = new Random();
    double[] doubles = new double[size];

    ArrayListOfDoubles list1 = new ArrayListOfDoubles();
    for (int i = 0; i < size; i++) {
      double k = r.nextDouble();
      list1.add(k);
      doubles[i] = k;
    }

    ArrayListOfDoubles list2 = list1.clone();

    assertEquals(size, list1.size());
    assertEquals(size, list2.size());

    for (int i = 0; i < size; i++) {
      list2.set(i, doubles[i] + 1);
    }

    // values in old list should not have changed
    assertEquals(size, list1.size());
    for (int i = 0; i < size; i++) {
      assertEquals(doubles[i], list1.get(i), 10e-5);
    }

    // however, values in new list should have changed
    assertEquals(size, list1.size());
    for (int i = 0; i < size; i++) {
      assertEquals(doubles[i] + 1, list2.get(i), 10e-5);
    }
  }
View Full Code Here


  @Test
  public void testToString() {
    int size = 10;
    Random r = new Random();

    ArrayListOfDoubles list = new ArrayListOfDoubles();
    for (int i = 0; i < size; i++) {
      list.add(r.nextDouble());
    }

    String out = list.toString();
    for (int i = 0; i < size; i++) {
      double v = list.get(i);

      // Make sure the first 10 elements are printed out.
      assertTrue(out.indexOf(new Double(v).toString()) != -1);
    }

    for (int i = 0; i < size; i++) {
      list.add(r.nextFloat());
    }

    out = list.toString();
    for (int i = size; i < size+size; i++) {
      double v = list.get(i);

      // Make sure these elements are not printed out.
      assertTrue(out.indexOf(new Double(v).toString()) == -1);
    }
View Full Code Here

  public void testIterable() {
    int size = 1000;
    Random r = new Random();
    double[] doubles = new double[size];

    ArrayListOfDoubles list = new ArrayListOfDoubles();
    for (int i = 0; i < size; i++) {
      double k = r.nextDouble();
      list.add(k);
      doubles[i] = k;
    }

    int i=0;
    for ( Double v : list) {
View Full Code Here

    }
  }

  @Test
  public void testSetSize() {
    ArrayListOfDoubles list = new ArrayListOfDoubles();

    list.add(5);
    assertEquals(1, list.size);
    assertEquals(5, list.get(0), 10e-6);

    list.setSize(5);
    assertEquals(5, list.size);
    assertEquals(0, list.get(1), 10e-6);
    assertEquals(0, list.get(2), 10e-6);
    assertEquals(0, list.get(3), 10e-6);
    assertEquals(0, list.get(4), 10e-6);

    list.add(12);
    assertEquals(6, list.size);
    assertEquals(12, list.get(5), 10e-6);
  }
View Full Code Here

    assertEquals(12, list.get(5), 10e-6);
  }

  @Test
  public void testSort() {
    ArrayListOfDoubles a = new ArrayListOfDoubles();
    assertEquals(0, a.size());

    a.add(5.2f).add(6f).add(5.9f).add(4.1f);
    assertEquals(4, a.size());

    a.sort();
    assertEquals(4, a.size());

    assertTrue(Math.abs(a.get(0)-4.1) < 0.0001);
    assertTrue(Math.abs(a.get(1)-5.2) < 0.0001);
    assertTrue(Math.abs(a.get(2)-5.9) < 0.0001);
    assertTrue(Math.abs(a.get(3)-6) < 0.0001);
  }
View Full Code Here

    assertTrue(Math.abs(a.get(3)-6) < 0.0001);
  }

  @Test
  public void testIntersection1() {
    ArrayListOfDoubles a = new ArrayListOfDoubles();
    a.add(5).add(3).add(1);

    a.sort();

    ArrayListOfDoubles b = new ArrayListOfDoubles();
    b.add(0).add(1).add(2).add(3);

    ArrayListOfDoubles c = a.intersection(b);

    assertTrue(Math.abs(1 - c.get(0)) < 0.0001);
    assertTrue(Math.abs(3 - c.get(1)) < 0.0001);
    assertTrue(Math.abs(2 - c.size()) < 0.0001);
  }
View Full Code Here

    assertTrue(Math.abs(2 - c.size()) < 0.0001);
  }

  @Test
  public void testIntersection2() {
    ArrayListOfDoubles a = new ArrayListOfDoubles();
    a.add(5);

    ArrayListOfDoubles b = new ArrayListOfDoubles();
    b.add(0).add(1).add(2).add(3);

    ArrayListOfDoubles c = a.intersection(b);
    assertTrue(c.size() == 0);
  }
View Full Code Here

    assertTrue(c.size() == 0);
  }

  @Test
  public void testIntersection3() {
    ArrayListOfDoubles a = new ArrayListOfDoubles();
    a.add(3).add(5).add(7).add(8).add(9);

    ArrayListOfDoubles b = new ArrayListOfDoubles();
    b.add(0).add(1).add(2).add(3);

    ArrayListOfDoubles c = a.intersection(b);

    assertTrue(Math.abs(3 - c.get(0)) < 0.0001);
    assertEquals(1, c.size());
  }
View Full Code Here

  @Test
  public void testMerge1() {
    //CASE: interleaved

    ArrayListOfDoubles a = new ArrayListOfDoubles();
    a.add(3);
    a.add(7);
    a.add(10);

    ArrayListOfDoubles b = new ArrayListOfDoubles();
    b.add(0);
    b.add(4);
    b.add(9);

    ArrayListOfDoubles c = a.merge(b);

    assertEquals(6, c.size());
    assertTrue(Math.abs(0 - c.get(0)) < 0.0001);
    assertTrue(Math.abs(3 - c.get(1)) < 0.0001);
    assertTrue(Math.abs(4 - c.get(2)) < 0.0001);
    assertTrue(Math.abs(7 - c.get(3)) < 0.0001);
    assertTrue(Math.abs(9 - c.get(4)) < 0.0001);
    assertTrue(Math.abs(10 - c.get(5)) < 0.0001);

    // c should be same as c2
    ArrayListOfDoubles c2 = b.merge(a);
    assertEquals(c, c2);
  }
View Full Code Here

  @Test
  public void testMerge2() {
    //CASE: append

    ArrayListOfDoubles a = new ArrayListOfDoubles();
    a.add(3);
    a.add(7);
    a.add(10);

    ArrayListOfDoubles b = new ArrayListOfDoubles();
    b.add(11);
    b.add(19);
    b.add(21);

    ArrayListOfDoubles c = a.merge(b);

    assertEquals(6, c.size());
    assertTrue(Math.abs(3 - c.get(0)) < 0.0001);
    assertTrue(Math.abs(7 - c.get(1)) < 0.0001);
    assertTrue(Math.abs(10 - c.get(2)) < 0.0001);
    assertTrue(Math.abs(11 - c.get(3)) < 0.0001);
    assertTrue(Math.abs(19 - c.get(4)) < 0.0001);
    assertTrue(Math.abs(21 - c.get(5)) < 0.0001);

    ArrayListOfDoubles c2 = b.merge(a);
    assertEquals(c, c2);
  }
View Full Code Here

TOP

Related Classes of edu.umd.cloud9.util.array.ArrayListOfDoubles

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.