Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何指定Java使用的方法?_Java_List_Integer - Fatal编程技术网

如何指定Java使用的方法?

如何指定Java使用的方法?,java,list,integer,Java,List,Integer,现在我有了一个ArrayList 如上所述,ArrayList有两种删除方法。 假设我有一个整数2,我想删除该列表中的元素2,而不是位置2上的元素(第三个元素),我应该如何告诉Java这样做?这是一个与此相关的问题。实际上,当T==Integer时,有两种删除方法: void-remove(int-index) void remove(整数对象) 只需强制编译器选择适当的、基于对象的版本,方法是将其强制转换为整数,或直接使用整数: list.remove((Integer)2); list.

现在我有了一个
ArrayList

如上所述,ArrayList有两种删除方法。

假设我有一个整数2,我想删除该列表中的元素2,而不是位置2上的元素(第三个元素),我应该如何告诉Java这样做?

这是一个与此相关的问题。实际上,当
T==Integer
时,有两种删除方法:

  • void-remove(int-index)
  • void remove(整数对象)
只需强制编译器选择适当的、基于对象的版本,方法是将其强制转换为
整数
,或直接使用
整数

list.remove((Integer)2);
list.remove(Integer.valueOf(2));

您应该使用
公共布尔删除(objecto)
方法从列表中删除对象。在本例中,您应该将语句编写为this.remove(新整数(2))

您可能会使用
int
按索引删除,使用
Integer
删除值。真正的问题是,您尝试过使用ArrayList.remove和一个原始整数做什么,编译器会将其解释为使用remove(对象o)。我的错,我应该补充这个细节。@Patashu:谢谢你的编辑!我忘了添加部分,这肯定会引起一些混乱。回答得很好。我想知道你为什么删掉了(新整数(2))选项..这不起作用吗?
(Integer)2
Integer.valueOf(2)
都是
Integer
,而不是
int
list.remove方法的区别是什么?
@octref:这只是口味的问题。我通常使用
新整数(..)
,但两者相等。