From acd989f86d0727645d50e15616ac433aa467cf9e Mon Sep 17 00:00:00 2001 From: david <david.carballo-iglesias@etu.hes.ge> Date: Thu, 31 Oct 2019 07:48:55 -0400 Subject: [PATCH] ajout des fonction slice -to -from --- src/main/java/ch/hepia/numeric/Vector.java | 17 ++++++++++++++--- src/test/java/ch/hepia/numeric/AppTest.java | 5 +++-- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/main/java/ch/hepia/numeric/Vector.java b/src/main/java/ch/hepia/numeric/Vector.java index 41d864e..5cdb4f9 100644 --- a/src/main/java/ch/hepia/numeric/Vector.java +++ b/src/main/java/ch/hepia/numeric/Vector.java @@ -77,15 +77,26 @@ final public class Vector { } public Vector sliceFrom(int i) { - throw new UnsupportedOperationException("This feature isn't implemented yet"); + return slice (i,this.len()); } public Vector sliceTo(int i) { - throw new UnsupportedOperationException("This feature isn't implemented yet"); + return slice (0,i); } public Vector slice(int from, int to) { - throw new UnsupportedOperationException("This feature isn't implemented yet"); + Vector v =new Vector(); + if (from>=to){ + return v; + } + else{ + for (double d : this.lstVector.subList(from,to)) + { + v.lstVector.add(d); + } + return v; + } + } public Vector removed(int i) { diff --git a/src/test/java/ch/hepia/numeric/AppTest.java b/src/test/java/ch/hepia/numeric/AppTest.java index a87afff..91415e1 100644 --- a/src/test/java/ch/hepia/numeric/AppTest.java +++ b/src/test/java/ch/hepia/numeric/AppTest.java @@ -74,7 +74,7 @@ class VectorTest { assertEquals(v.toString(), "Vector[1.0, 2.0, 3.0]"); assertEquals(v.t().toString(), "Transposed[1.0, 2.0, 3.0]"); } -/* + @Test void vectorSlice() { Vector v = Vector.of(1.0, 2.0, 3.0, 4.0, 5.0); @@ -83,8 +83,9 @@ class VectorTest { assertEquals(v.slice(2,4), Vector.of(3.0, 4.0)); assertEquals(v.slice(4,4), Vector.empty()); assertEquals(v.slice(4,2), Vector.empty()); - assertEquals(v.removed(2), Vector.of(1.0, 2.0, 4.0, 5.0)); + // assertEquals(v.removed(2), Vector.of(1.0, 2.0, 4.0, 5.0)); } + /* @Test void vectorConcat() { Vector v1 = Vector.of(1.0, 2.0, 3.0); -- GitLab