我已成功从 2 个文件中提取数据并将它们存储在各自类的数组对象中。这是我存储在数组对象中的一些数据:
2005,Arsenal,ManU,Arsenal,WestHam,Y,2,3,40000
2006,ManU,Chelsea,ManU,WestHam,N
2007,ManU,Arsenal,ManU,WestHam,Y,1,0,260000
2008,Chelsea,ManU,Chelsea,Swansea,Y,4,0,285630
2009,Chelsea,ManCity,Chelsea,Swansea,N
每个逗号代表不同的列。这是我存储它的代码:
try{
Scanner kd = new Scanner(file);
while(kd.hasNext()){
String data = kd.nextLine();
String [] values = data.split(",");
String year = values[0];
String wScore = "N/A" , lScore = "N/A", crowd = "N/A";
if(inputYears.equals(year))
{
g.setPremier(values[1]);
g.setLosing(values[2]);
我按照一些用户的建议做了,但现在唯一的问题是我的获胜者为空白。例如:
Year: 2005
Premier:
应该是:
Premier: Arsenal
无论如何我可以解决这个问题吗?
最佳答案
好吧,如果用户只想按年份查询,那么您应该有一个以年份作为键的 map .
在初始化阶段,尝试执行以下操作:
Map<String, ArrayList<String>> map= new HashMap<String, ArrayList<String>>();
while(kd.hasNext()){
String data = kd.nextLine();
String [] values = data.split(",");
String year = values[0];
String premiers = values[1];
//String otherStuff= values[2]; and so on
ArrayList<String> temp= new ArrayList<String>();
temp.add(premiers);
//temp.add(otherStuff);
map.put(year, temp);
}
稍后,您可以这样查询:
ArrayList<String> values= map.get(userInputYear);
String winner= values.get(0);
关于java - 搜索从文件中提取的数据,并将其存储到数组中以获取答案。 IO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16818810/