diff --git a/Functional-Programming-Project/src/com/basicsstrong/functional/section14/ListFun.java b/Functional-Programming-Project/src/com/basicsstrong/functional/section14/ListFun.java index 7855cc0..8dfe68a 100644 --- a/Functional-Programming-Project/src/com/basicsstrong/functional/section14/ListFun.java +++ b/Functional-Programming-Project/src/com/basicsstrong/functional/section14/ListFun.java @@ -95,11 +95,11 @@ public ListFun addEle(T e){ //method to add element at specific position public ListFun addEle(int pos, T ele){ - if(pos < 1 || pos > length()) + if(pos < 0 || pos > length()) throw new IndexOutOfBoundsException(); - if(pos == 1) - return this.tail().addEle(ele); - return new Const(head(),addEle(pos-1,ele)); + if(pos == 0) + return this.addEle(ele); + return new Const(head(),tail().addEle(pos-1,ele)); } public void forEach(Consumer action) {