Java item类型的ArrayList无法保存文件中的值

Java item类型的ArrayList无法保存文件中的值,java,arraylist,Java,Arraylist,我应该从一个文件中读取,将其排序到Arraylist中,然后搜索它 但是当我读取文件并尝试填充Arraylist时,它会给我一个无法应用于java.string的错误 我也很难弄清楚如何对这个列表进行排序 这就是我从中得出的数字: 公共类storeDalton{ 扫描仪输入; private ArrayList myStore=new ArrayList(); 项目产品; 公共存储道尔顿(字符串fName){ } 公共商店道尔顿(){ } 私有void加载文件(字符串填充名){ 试一试{ in=

我应该从一个文件中读取,将其排序到Arraylist中,然后搜索它

但是当我读取文件并尝试填充Arraylist时,它会给我一个无法应用于java.string的错误

我也很难弄清楚如何对这个列表进行排序

这就是我从中得出的数字:

公共类storeDalton{
扫描仪输入;
private ArrayList myStore=new ArrayList();
项目产品;
公共存储道尔顿(字符串fName){
}
公共商店道尔顿(){
}
私有void加载文件(字符串填充名){
试一试{
in=新扫描仪(新文件(inFileName));
while(在.hasNext()中){
添加(in.nextLine());
}
}捕获(IOI异常){
System.out.println(“错误:+i.getMessage());
}
}
公共存储区(){
}
//公共字符串toString(){
//  }
公共无效排序(){
}
私有无效合并(ArrayList a,int-first,int-mid,int-last){
}
公共void合并排序(ArrayList a,int first,int last){
}
专用无效交换(ArrayList,int a,int b){
}
公共静态void main(字符串[]args){
storeDalton run=新的storeDalton();
run.loadFile(“file50.txt”);
run.displayStore();
}
}

声明列表变量时,您提供了
项作为泛型类型,但您试图在列表中存储
字符串。您需要以某种方式将字符串转换为
,并将其存储在列表中

ArrayList<Item> myStore; // Here you are saying that the list will store Item objects
...
myStore.add(in.nextLine()); // But here you're trying to store a String object
ArrayList myStore;//这里您是说列表将存储项对象
...
myStore.add(in.nextLine());//但在这里,您试图存储一个字符串对象

如果你看你的代码,你会发现有代码

ArrayList<Item> myStore 
ArrayList myStore
这意味着ArrayList将包含类型为
Item

您正在尝试添加字符串-这将不起作用。是否尝试构造或添加
对象

public Item(int id, int inv){
    myId = id;
    myInv = inv;
}

好的,我想我明白了,我需要将字符串分成两部分,然后转换为int值。

首先用读入的字符串创建一个Item对象,然后将其添加到ArrayList中。请明确您打算做什么。你到底有什么问题?试着解释一下,而不是问“怎么做”的问题。这可以确保问题(可能还有任何给定的解决方案)是明确的,并且可能被其他用户重复使用。最好始终发布完整的错误和/或堆栈跟踪。我们无法猜测这一点,因为您从未发布过您的项目类代码。底线是批判性地阅读错误信息,相信它们并采取行动。他们已经告诉您,您可能试图在ArrayList中添加一个字符串,该字符串只接受Item对象。
public Item(int id, int inv){
    myId = id;
    myInv = inv;
}