diff options
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/funcdata')
| -rw-r--r-- | BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalList.java | 25 |
1 files changed, 19 insertions, 6 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalList.java b/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalList.java index 81c263f..0374a1f 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalList.java +++ b/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalList.java @@ -409,6 +409,7 @@ public class FunctionalList<E> implements Cloneable, IList<E> { @Override public void sort(Comparator<E> comparator) { + // sb.deleteCharAt(sb.length() - 2); Collections.sort(wrapped, comparator); } @@ -429,17 +430,29 @@ public class FunctionalList<E> implements Cloneable, IList<E> { @Override public String toString() { + int lSize = getSize(); + + if(lSize == 0) return "()"; + StringBuilder sb = new StringBuilder("("); + Iterator<E> itr = toIterable().iterator(); + E itm = itr.next(); - // Append the string form of each element - forEach(strang -> sb.append(strang + ", ")); + if(lSize == 1) { + return "(" + itm + ")"; + } - // Remove trailing space and comma - sb.deleteCharAt(sb.length() - 1); - // sb.deleteCharAt(sb.length() - 2); + for(int i = 0; itr.hasNext(); itm = itr.next()) { + sb.append(itm.toString()); - sb.append(")"); + if(i < lSize-1) { + sb.append(", "); + } + i += 1; + } + + sb.append(")"); return sb.toString(); } } |
