Ambiguity of Remove Method in Java ArrayList -


generally, usage of remove method arraylist in java shown below:

arraylist<string> list = new arraylist<string>(); list.add("abc"); list.add("efg");  list.remove(1);   //removing second element in arraylist. list.remove("abc");  //removing element value "abc" in arraylist.  

however, there situation overloading doesn't work.

arraylist<integer> numbers = new arraylist<integer>(); 

numbers.add(1); numbers.add(2); when tried remove element value 2. gives me error:

java.lang.indexoutofboundsexception: index: 2, size: 2     @ java.util.arraylist.rangecheck(arraylist.java:547)     @ java.util.arraylist.remove(arraylist.java:387) 

so looks when comes remove number, can't remove element specific value. because computer assume integer value index, not value of element.

it subtle error. there other simple way delete element specific integer value?

you need use integer object.

    arraylist<integer> numbers = new arraylist<integer>();     numbers.add(5);     numbers.add(10);     numbers.remove(new integer(5));     system.err.println(numbers);     //prints [10] 

Comments

Popular posts from this blog

c# - ItextSharp font color issue in ver 5.5.4+ -

jquery - Multiple issues with pushstate: history, loading, calling functions -

ios - retrievePeripherals deprecated in IOS7 how to substitude it with retrievePeripheralsWithIdentifiers -