我应该从文件中读取,将其分类为Arraylist然后搜索它。
但是当我读取文件并尝试填充我的Arraylist时,它给了我一个无法应用于java.string错误。
此外,我无法弄清楚如何对此列表进行排序。
这就是我从中提取的数字:http://puu.sh/pn9hs/abd4980197.png
public class storeDalton {
Scanner in;
private ArrayList<Item> myStore = new ArrayList<Item>();
Item product;
public storeDalton(String fName) {
}
public storeDalton() {
}
private void loadFile(String inFileName) {
try {
in = new Scanner(new File(inFileName));
while (in.hasNext()) {
myStore.add(in.nextLine());
}
} catch (IOException i) {
System.out.println("Error: " + i.getMessage());
}
}
public void displayStore() {
}
// public String toString() {
// }
public void Sort() {
}
private void merge(ArrayList<Item> a, int first, int mid, int last) {
}
public void mergeSort(ArrayList<Item> a, int first, int last) {
}
private void swap(ArrayList<Item> list, int a, int b) {
}
public static void main(String[] args) {
storeDalton run = new storeDalton();
run.loadFile("file50.txt");
run.displayStore();
}
}
答案 0 :(得分:1)
如果查看代码,您会看到代码
ArrayList<Item> myStore
这意味着ArrayList将包含Item
您正在尝试添加字符串 - 这不起作用。尝试构建Item
对象并添加它们?
答案 1 :(得分:0)
在声明列表变量时,您提供了Item
作为泛型类型,但是您尝试在列表中存储String
。您需要以某种方式将字符串转换为Item
,并将其存储在列表中。
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
答案 2 :(得分:-1)
public Item(int id, int inv){
myId = id;
myInv = inv;
}
好的我想我想出来我需要将我的字符串分成两部分然后转换为int值。