Поэтому я пытаюсь разработать программу, которая включает объекты в связанный список указанного объекта. В той же программе у меня есть несколько других списков, которые отлично работают с теми же логами c, что и этот.
Однако после того, как я проверил, что мой метод passByStation () работает нормально, он возвращает true, когда Я использую метод passages.add (), я пытаюсь использовать этот список для печати объектов в методе stopToString (), и он ничего не находит в моем списке Passages.
Может кто-нибудь помочь мне разобраться в чем проблема?
public class Train {
String acronym;
private final LinkedList<Passage> passages; //useful list for method getLast()
/**
*
* @param acr train acronym
*/
public Train(String acr){
acronym = acr;
passages = new LinkedList<>();
}
public boolean passByStation(Station st, int lin, boolean to){ //does it make sense not to receive passage id as an argument?
int id = passages.size();
Passage pass = new Passage(id, to, lin, st, this);
passages.add(pass);
if(passages.isEmpty()) {
System.out.println("list is empty after adding");
return false;
} else System.out.println("passByStation works");
return true;
public String stopsToString(){
String str = "train [" + acronym + "]: ";
if(passages.isEmpty()) System.out.println("for some reason, passages is empty even though passByStation returns true for the adding of the object");
for(Passage pass: passages){
if(pass.hasStop()) str += "" + pass.toString();
}
return str;
}