私は今日この質問をしましたが、答えは私の問題を解決するのに役立ちませんでした. 私は更新されたものでもう一度尋ねることができ、うまくいけば私の問題を解決できると思いました。
Q が X に隣接していること、R が X に隣接していること (また)、P が R に隣接していることなどを示すにはどうすればよいですか? テキストファイル
Q X
R X
P R
P W
W S
S T
T W
W Y
Y R
Y Z
したがって、画面に出力されます:
Q is adjacent to X
R is adjacent to X
P is adjacent to R (tab or spaces) W
etc etc etc
ファイルを読み取り、それらを 2 つの異なる ListArray に格納するコードのセグメント
while (theFlightFile.hasNext()) {
String cityFrom = theFlightFile.next();
String cityTo = theFlightFile.next();
City cityA = new City(cityFrom);
City cityB = new City(cityTo);
cityToList.add(cityA);
cityFromList.add(cityB);
//testing input reading...
//System.out.println(cityFrom + " -----> " + cityTo);
}
/**
* Displays to the screen, a list of all cities served by the airline
* along with the names of cities to which each is adjacent.
*/
public void displayFlightMap() {
int i = 0;
while (!cityStack.isEmpty() && topCity.equals(destinationCity)) {
displayAdjacentCities(cityFromList.get(i));
i++;
}
}
/**
* Displays to the screen, the names of all cities which are are adjacent
* to aCity; aCity is assumed to be a valid city served by the airline.
* @param aCity The city for which the adjacency list is desired.
*/
public void displayAdjacentCities(City aCity) {
String str = "";
for (City cityA : cityToList) {
for (City cityB : cityFromList) {
if (cityA != cityB) {
str = cityA + " is adjacent to " + cityB;
}
}
System.out.println(str);
}
}
表示されるのは、cityToList が 10 回印刷され、すべて「Z」に隣接していると表示されているように見えるものです。