[jira] [Updated] (LANG-1074) Add a method to ArrayUtils for removing all occurrences of a given element
[ https://issues.apache.org/jira/browse/LANG-1074?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] haiyang li updated LANG-1074: - Attachment: LANG-1074.patch.txt Add a method to ArrayUtils for removing all occurrences of a given element -- Key: LANG-1074 URL: https://issues.apache.org/jira/browse/LANG-1074 Project: Commons Lang Issue Type: Improvement Components: lang.* Affects Versions: 3.3.2 Reporter: haiyang li Priority: Minor Fix For: Review Patch Attachments: LANG-1074.patch.txt Could we add the method: removeElementAll to remove all the occurrences of the specified element from the specified (boolean/char/byte/short/int/long/float/double/Object) array: {code:title=org.apache.commons.lang3.ArrayUtils.java|borderStyle=solid} public static T T[] removeElementAll(final T[] array, final Object element) { int index = indexOf(array, element); if (index == INDEX_NOT_FOUND) { return clone(array); } int[] indices = new int[array.length - index]; int count = 0; indices[count++] = index; for (;;) { index = indexOf(array, element, ++index); if (index == INDEX_NOT_FOUND) { break; } else { indices[count++] = index; } } return (T[]) removeAll((Object) array, Arrays.copyOfRange(indices, 0, count)); } {code} or maybe better: {code:title=org.apache.commons.lang3.ArrayUtils.java|borderStyle=solid} public static T T[] removeElement(final T[] a, final Object element, boolean removeAll) { int index = indexOf(a, element); if (index == INDEX_NOT_FOUND) { return clone(a); } else if (!removeAll || index = a.length - 1) { return remove(a, index); } else { int[] indices = new int[a.length - index]; int count = 0; indices[count++] = index++; for (int len = a.length; index len; index++) { if ((a[index] == null) ? element == null : (element == null ? false : a[index].equals(element))) { indices[count++] = index; } } return (T[]) removeAll((Object) a, Arrays.copyOfRange(indices, 0, count)); } } {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (LANG-1074) Add a method to ArrayUtils for removing all occurrences of a given element
[ https://issues.apache.org/jira/browse/LANG-1074?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] haiyang li updated LANG-1074: - Attachment: LANG-1074.patch.txt Add a method to ArrayUtils for removing all occurrences of a given element -- Key: LANG-1074 URL: https://issues.apache.org/jira/browse/LANG-1074 Project: Commons Lang Issue Type: Improvement Components: lang.* Affects Versions: 3.3.2 Reporter: haiyang li Priority: Minor Fix For: Review Patch Could we add the method: removeElementAll to remove all the occurrences of the specified element from the specified (boolean/char/byte/short/int/long/float/double/Object) array: {code:title=org.apache.commons.lang3.ArrayUtils.java|borderStyle=solid} public static T T[] removeElementAll(final T[] array, final Object element) { int index = indexOf(array, element); if (index == INDEX_NOT_FOUND) { return clone(array); } int[] indices = new int[array.length - index]; int count = 0; indices[count++] = index; for (;;) { index = indexOf(array, element, ++index); if (index == INDEX_NOT_FOUND) { break; } else { indices[count++] = index; } } return (T[]) removeAll((Object) array, Arrays.copyOfRange(indices, 0, count)); } {code} or maybe better: {code:title=org.apache.commons.lang3.ArrayUtils.java|borderStyle=solid} public static T T[] removeElement(final T[] a, final Object element, boolean removeAll) { int index = indexOf(a, element); if (index == INDEX_NOT_FOUND) { return clone(a); } else if (!removeAll || index = a.length - 1) { return remove(a, index); } else { int[] indices = new int[a.length - index]; int count = 0; indices[count++] = index++; for (int len = a.length; index len; index++) { if ((a[index] == null) ? element == null : (element == null ? false : a[index].equals(element))) { indices[count++] = index; } } return (T[]) removeAll((Object) a, Arrays.copyOfRange(indices, 0, count)); } } {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (LANG-1074) Add a method to ArrayUtils for removing all occurrences of a given element
[ https://issues.apache.org/jira/browse/LANG-1074?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] haiyang li updated LANG-1074: - Attachment: (was: LANG-1074.patch.txt) Add a method to ArrayUtils for removing all occurrences of a given element -- Key: LANG-1074 URL: https://issues.apache.org/jira/browse/LANG-1074 Project: Commons Lang Issue Type: Improvement Components: lang.* Affects Versions: 3.3.2 Reporter: haiyang li Priority: Minor Fix For: Review Patch Could we add the method: removeElementAll to remove all the occurrences of the specified element from the specified (boolean/char/byte/short/int/long/float/double/Object) array: {code:title=org.apache.commons.lang3.ArrayUtils.java|borderStyle=solid} public static T T[] removeElementAll(final T[] array, final Object element) { int index = indexOf(array, element); if (index == INDEX_NOT_FOUND) { return clone(array); } int[] indices = new int[array.length - index]; int count = 0; indices[count++] = index; for (;;) { index = indexOf(array, element, ++index); if (index == INDEX_NOT_FOUND) { break; } else { indices[count++] = index; } } return (T[]) removeAll((Object) array, Arrays.copyOfRange(indices, 0, count)); } {code} or maybe better: {code:title=org.apache.commons.lang3.ArrayUtils.java|borderStyle=solid} public static T T[] removeElement(final T[] a, final Object element, boolean removeAll) { int index = indexOf(a, element); if (index == INDEX_NOT_FOUND) { return clone(a); } else if (!removeAll || index = a.length - 1) { return remove(a, index); } else { int[] indices = new int[a.length - index]; int count = 0; indices[count++] = index++; for (int len = a.length; index len; index++) { if ((a[index] == null) ? element == null : (element == null ? false : a[index].equals(element))) { indices[count++] = index; } } return (T[]) removeAll((Object) a, Arrays.copyOfRange(indices, 0, count)); } } {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (LANG-1074) Add a method to ArrayUtils for removing all occurrences of a given element
[ https://issues.apache.org/jira/browse/LANG-1074?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] haiyang li updated LANG-1074: - Attachment: (was: LANG-1074.patch.txt) Add a method to ArrayUtils for removing all occurrences of a given element -- Key: LANG-1074 URL: https://issues.apache.org/jira/browse/LANG-1074 Project: Commons Lang Issue Type: Improvement Components: lang.* Affects Versions: 3.3.2 Reporter: haiyang li Priority: Minor Fix For: Review Patch Could we add the method: removeElementAll to remove all the occurrences of the specified element from the specified (boolean/char/byte/short/int/long/float/double/Object) array: {code:title=org.apache.commons.lang3.ArrayUtils.java|borderStyle=solid} public static T T[] removeElementAll(final T[] array, final Object element) { int index = indexOf(array, element); if (index == INDEX_NOT_FOUND) { return clone(array); } int[] indices = new int[array.length - index]; int count = 0; indices[count++] = index; for (;;) { index = indexOf(array, element, ++index); if (index == INDEX_NOT_FOUND) { break; } else { indices[count++] = index; } } return (T[]) removeAll((Object) array, Arrays.copyOfRange(indices, 0, count)); } {code} or maybe better: {code:title=org.apache.commons.lang3.ArrayUtils.java|borderStyle=solid} public static T T[] removeElement(final T[] a, final Object element, boolean removeAll) { int index = indexOf(a, element); if (index == INDEX_NOT_FOUND) { return clone(a); } else if (!removeAll || index = a.length - 1) { return remove(a, index); } else { int[] indices = new int[a.length - index]; int count = 0; indices[count++] = index++; for (int len = a.length; index len; index++) { if ((a[index] == null) ? element == null : (element == null ? false : a[index].equals(element))) { indices[count++] = index; } } return (T[]) removeAll((Object) a, Arrays.copyOfRange(indices, 0, count)); } } {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (LANG-1074) Add a method to ArrayUtils for removing all occurrences of a given element
[ https://issues.apache.org/jira/browse/LANG-1074?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Benedikt Ritter updated LANG-1074: -- Summary: Add a method to ArrayUtils for removing all occurrences of a given element (was: Add removeElementAll method in class ArrayUtils) Add a method to ArrayUtils for removing all occurrences of a given element -- Key: LANG-1074 URL: https://issues.apache.org/jira/browse/LANG-1074 Project: Commons Lang Issue Type: Improvement Components: lang.* Affects Versions: 3.3.2 Reporter: haiyang li Priority: Minor Fix For: Review Patch Attachments: LANG-1074.patch.txt Could we add the method: removeElementAll to remove all the occurrences of the specified element from the specified (boolean/char/byte/short/int/long/float/double/Object) array: {code:title=org.apache.commons.lang3.ArrayUtils.java|borderStyle=solid} public static T T[] removeElementAll(final T[] array, final Object element) { int index = indexOf(array, element); if (index == INDEX_NOT_FOUND) { return clone(array); } int[] indices = new int[array.length - index]; int count = 0; indices[count++] = index; for (;;) { index = indexOf(array, element, ++index); if (index == INDEX_NOT_FOUND) { break; } else { indices[count++] = index; } } return (T[]) removeAll((Object) array, Arrays.copyOfRange(indices, 0, count)); } {code} or maybe better: {code:title=org.apache.commons.lang3.ArrayUtils.java|borderStyle=solid} public static T T[] removeElement(final T[] a, final Object element, boolean removeAll) { int index = indexOf(a, element); if (index == INDEX_NOT_FOUND) { return clone(a); } else if (!removeAll || index = a.length - 1) { return remove(a, index); } else { int[] indices = new int[a.length - index]; int count = 0; indices[count++] = index++; for (int len = a.length; index len; index++) { if ((a[index] == null) ? element == null : (element == null ? false : a[index].equals(element))) { indices[count++] = index; } } return (T[]) removeAll((Object) a, Arrays.copyOfRange(indices, 0, count)); } } {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (LANG-1074) Add a method to ArrayUtils for removing all occurrences of a given element
[ https://issues.apache.org/jira/browse/LANG-1074?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Benedikt Ritter updated LANG-1074: -- Fix Version/s: (was: Patch Needed) Review Patch Add a method to ArrayUtils for removing all occurrences of a given element -- Key: LANG-1074 URL: https://issues.apache.org/jira/browse/LANG-1074 Project: Commons Lang Issue Type: Improvement Components: lang.* Affects Versions: 3.3.2 Reporter: haiyang li Priority: Minor Fix For: Review Patch Attachments: LANG-1074.patch.txt Could we add the method: removeElementAll to remove all the occurrences of the specified element from the specified (boolean/char/byte/short/int/long/float/double/Object) array: {code:title=org.apache.commons.lang3.ArrayUtils.java|borderStyle=solid} public static T T[] removeElementAll(final T[] array, final Object element) { int index = indexOf(array, element); if (index == INDEX_NOT_FOUND) { return clone(array); } int[] indices = new int[array.length - index]; int count = 0; indices[count++] = index; for (;;) { index = indexOf(array, element, ++index); if (index == INDEX_NOT_FOUND) { break; } else { indices[count++] = index; } } return (T[]) removeAll((Object) array, Arrays.copyOfRange(indices, 0, count)); } {code} or maybe better: {code:title=org.apache.commons.lang3.ArrayUtils.java|borderStyle=solid} public static T T[] removeElement(final T[] a, final Object element, boolean removeAll) { int index = indexOf(a, element); if (index == INDEX_NOT_FOUND) { return clone(a); } else if (!removeAll || index = a.length - 1) { return remove(a, index); } else { int[] indices = new int[a.length - index]; int count = 0; indices[count++] = index++; for (int len = a.length; index len; index++) { if ((a[index] == null) ? element == null : (element == null ? false : a[index].equals(element))) { indices[count++] = index; } } return (T[]) removeAll((Object) a, Arrays.copyOfRange(indices, 0, count)); } } {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)