在ArrayList Java中操作值

在ArrayList Java中操作值,java,string,arraylist,Java,String,Arraylist,我希望能够减少ArrayList中的值,以模拟从堆中移除的对象。但是,我无法使用ArrayList(字符串)执行此操作 下面的例子就是我所尝试的 ItemArray.get(pressedItem + 1) = (ItemArray.get(pressedItem + 1)) - 1 有没有办法让ArrayList中的值进入更易于操作的状态 编辑: 只是要指出,我的ArrayList目前是ArrayList(String)您需要使用它来修改列表 List<Integer> item

我希望能够减少ArrayList中的值,以模拟从堆中移除的对象。但是,我无法使用ArrayList(字符串)执行此操作

下面的例子就是我所尝试的

ItemArray.get(pressedItem + 1) = (ItemArray.get(pressedItem + 1)) - 1
有没有办法让ArrayList中的值进入更易于操作的状态

编辑:

只是要指出,我的ArrayList目前是ArrayList(String)

您需要使用它来修改列表

List<Integer> items = new ArrayList<Integer>();
// later...
int position = pressedItem + 1;
items.set(position, items.get(position) - 1);
List items=new ArrayList();
//后来。。。
int位置=按EDITEM+1;
items.set(位置,items.get(位置)-1);
您需要使用来改变列表

List<Integer> items = new ArrayList<Integer>();
// later...
int position = pressedItem + 1;
items.set(position, items.get(position) - 1);
List items=new ArrayList();
//后来。。。
int位置=按EDITEM+1;
items.set(位置,items.get(位置)-1);

ArrayList
是一个类。假设
ItemArray
是该类的一个实例(请用小写字母开始变量,顺便说一句),您需要通过方法调用来使用它。在您的情况下,
设置
。像这样:

itemArray.set(pressedItem + 1, itemArray.get(pressedItem + 1) - 1)
请注意,如果您将
ArrayList
声明为包含整数或其他数值类型,则上述操作将与此完全相同,因此Java可以为您完成转换工作:

List<Integer> itemArray = new ArrayList<Integer>();
List itemArray=new ArrayList();

ArrayList
是一个类。假设
ItemArray
是该类的一个实例(请用小写字母开始变量,顺便说一句),您需要通过方法调用来使用它。在您的情况下,
设置
。像这样:

itemArray.set(pressedItem + 1, itemArray.get(pressedItem + 1) - 1)
请注意,如果您将
ArrayList
声明为包含整数或其他数值类型,则上述操作将与此完全相同,因此Java可以为您完成转换工作:

List<Integer> itemArray = new ArrayList<Integer>();
List itemArray=new ArrayList();

感谢快速响应人员,但是
ItemArray.get(position)-1
返回一个错误
运算符-未定义参数类型字符串int
@Jack,这意味着您的列表被设置为包含字符串。Java是强类型的,它不会神奇地将字符串转换为数值。或者指定您的列表包含整数类型,或者。啊,太棒了,太完美了,谢谢=)您能在您的答案中添加一些关于转换为整数的内容吗?谢谢。请为您的数据使用正确的数据类型;存储整数列表,而不是字符串。感谢快速响应人员,但是
ItemArray.get(position)-1
返回一个错误
运算符-未定义参数类型字符串int
@Jack,这意味着您的列表设置为包含字符串。Java是强类型的,它不会神奇地将字符串转换为数值。或者指定您的列表包含整数类型,或者。啊,太棒了,太完美了,谢谢=)您能在您的答案中添加一些关于转换为整数的内容吗?谢谢。请为您的数据使用正确的数据类型;存储一个整数列表,而不是字符串。看起来我不能用声明我的ArrayList,因为我正在用CSV文件的内容填充它:/它当前是@Jack,那么你要么a)在填充列表时转换,要么b)在使用字符串时存储并转换。a) 更可取,因为它可以更快地捕获不正确的输入,并使以后的处理更容易。看起来我无法用声明我的ArrayList,因为我正在用CSV文件的内容填充它:/它当前为@Jack,那么您必须a)在填充列表时转换,或者b)存储字符串并在使用时转换。a) 更可取,因为它可以更快地捕获不正确的输入,并使以后的处理更容易。