[jira] [Updated] (LANG-1074) Add a method to ArrayUtils for removing all occurrences of a given element

2015-02-20 Thread haiyang li (JIRA)

 [ 
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

2015-02-20 Thread haiyang li (JIRA)

 [ 
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

2015-02-20 Thread haiyang li (JIRA)

 [ 
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

2015-02-20 Thread haiyang li (JIRA)

 [ 
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

2014-12-25 Thread Benedikt Ritter (JIRA)

 [ 
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

2014-12-25 Thread Benedikt Ritter (JIRA)

 [ 
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)