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

node.js - Mongoose: Cast to ObjectId failed for value on newly created object after setting the value -

[C++][SFML 2.2] Strange Performance Issues - Moving Mouse Lowers CPU Usage -

ios - Possible to get UIButton sizeThatFits to work? -