我已经发布了这个问题,但我已经回去并且经常更改了我的代码。我收到一个我不明白的新错误。我求助了,但TA也不理解。在for循环中我的.get方法给出了一个错误。我试过在java API上查找并发现了一个.values。我试过了,但它仍然没有用。该错误说明特别不适用于表达式类型它说需要数组或java.lang.Iterable但找到了String。
import java.io.*;
import java.util.*;
// N O C O M M A N D L I N E A R G S!
// A L L F I L E N A M E S M U S T B E H A R D C O D E D
public class Pacs
{
public static void main( String args[] ) throws Exception
{
BufferedReader pacsFile = new BufferedReader( new FileReader( "pacs.txt" ) );
BufferedReader membersFile = new BufferedReader( new FileReader( "members.txt" ) );
TreeMap<String,String> Map = new TreeMap<String,String>();
ArrayList<String> acroymn = new ArrayList<String>();
String group;
String people;
while((group = pacsFile.readLine()) != null)
{
acroymn.add(group);
}
Collections.sort(acroymn);
pacsFile.close();
while((membersFile.ready()))
{
ArrayList<String> members = new ArrayList<String>();
people = membersFile.readLine();
String [] peoples = people.split(" ");
members.add(peoples[0]);
for (int i = 1; i< peoples.length; i++)
{
Map.put(peoples[i],peoples[0]);
}
}
membersFile.close();
for(String acro: acroymn)
{
String name = "";
for(String mem: Map.keySet())
{
for(String S: Map.get())
{
if(acro.equals(S))
{
name = name+ " " + mem;
}
}
}
System.out.println(acro + " " + name);
}
} // END MAIN
} // CLASS
答案 0 :(得分:0)
由于几个原因,有一个变量名称,例如&#34; Map&#34;但除此之外,你粘贴的代码叫做#34; Map.get()&#34;在哪里&#34;地图&#34;是对TreeMap实例的引用。 TreeMap中没有get()方法,它不接受任何参数,所以我不希望上面的代码甚至编译。
答案 1 :(得分:0)
代码很麻烦,很难说出你想要完成的任务。是不是这样(它甚至不会编译)......
for(String S: Map.get(mem))
{
if(acro.equals(S))
{
name = name+ " " + mem;
}
}
你在找这样的东西吗?...
String s = Map.get(mem);
if(acro.equals(s))
{
name = name+ " " + mem;
}