としてリストとマップ内の単語を検索:javaの - 私は.txtの持っている価値
- ライン:X、ミュンヘン、C、E、
- Fライン:Y、ベルリン、広告、UFを
- ライン:のZ、ハンブルク、BF
は、すべての単語が '' で分離されています。
このtxtの1行の最初の2文字列はコンストラクタに送られます。 3.以降の文字列はリストに移動します。 たとえば、キーは次のとおりです。a b(コンストラクタの形式) 値は、c、e、fを持つArrayListです。だから3要素。
String filePath = "....txt";
List<String> itemlist = new ArrayList<String>();
HashMap<Corporation, List> corp = new HashMap<Corporation, List>();
String line;
BufferedReader reader = new BufferedReader(new FileReader(filePath));
while ((line = reader.readLine()) != null) {
String[] parts = line.split(",", 3);
if (parts.length >= 3) {
String name = parts[0]; // key=name, value= address
String address = parts[1];
String info = parts[2];
itemlist = new ArrayList<String>(Arrays.asList(info.split(",")));
Corporation cor = new Corporation(name, address);
corp.put(cor, itemlist);
}
}
すべて正常に動作します。 これで、MapのArrayListの1つで文字列を検索する必要があります。 たとえば、文字列 "bf"を検索し、文字列を見つけたことと、地図の右のキーでどこにあるのかを表示します。例えば "bf"とすると、 "bf found in" z、Hamburg ""と表示されます。
for (Entry<Corporation, List> entry : corp.entrySet()) {
if (entry.getValue().equals("bf")) {
System.out.println("Found at " +);
System.out.println(entry.getKey());
} else {
System.out.println("String not found.");
}
}
私のコードのこの部分は、私が望むように動作しません。どうすればいいのですか?
出力は/大丈夫 – Treycos