From af9d6d783aff1b24adbace2094a0df76c4387bfe Mon Sep 17 00:00:00 2001 From: fefe <hofer.francois.01@gmail.com> Date: Thu, 9 Jan 2020 11:34:22 +0100 Subject: [PATCH] New function fill , tested --- src/main/java/ch/hepia/numeric/Vector.java | 22 ++++++++++++++++++++- src/test/java/ch/hepia/numeric/AppTest.java | 7 +++++++ 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/src/main/java/ch/hepia/numeric/Vector.java b/src/main/java/ch/hepia/numeric/Vector.java index 7ed7bf3..eb9d694 100644 --- a/src/main/java/ch/hepia/numeric/Vector.java +++ b/src/main/java/ch/hepia/numeric/Vector.java @@ -189,7 +189,27 @@ final public class Vector { public static double norms(List<Vector> vs) { return Vector.sum(vs).norm(); } - + // FILL NEW VERSION : + public static SubVec fill(int nbr){ + return new Vector().new SubVec(nbr); + } + protected class SubVec{ + private int nbre; + protected SubVec(int nbre){ + this.nbre = nbre; + } + private int getNbre(){ + return this.nbre; + } + + public Vector withValue(Double alpha){ + List<Double> newVec = new ArrayList<>(); + for (int i = 0; i < this.getNbre();i++){ + newVec.add(alpha); + } + return new Vector(newVec); + } + } @Override public String toString() { diff --git a/src/test/java/ch/hepia/numeric/AppTest.java b/src/test/java/ch/hepia/numeric/AppTest.java index e5f5072..cce66c1 100644 --- a/src/test/java/ch/hepia/numeric/AppTest.java +++ b/src/test/java/ch/hepia/numeric/AppTest.java @@ -137,4 +137,11 @@ class VectorTest { assertEquals(v.slice(4,2), Transposed.empty()); assertEquals(v.removed(2), Transposed.of(1.0, 2.0, 4.0, 5.0)); } +// Vector V2 functions test : + @Test + void vectorfillv2() { + assertEquals(Vector.fill(3).withValue(1.7), Vector.of(1.7, 1.7, 1.7)); + assertEquals(Vector.fill(4).withValue(1.5), Vector.of(1.5, 1.5, 1.5, 1.5)); + assertEquals(Vector.fill(2).withValue(1.0), Vector.of(1.0, 1.0)); + } } -- GitLab