В настоящее время я работаю над частью программы, которая предлагает пользователю добавить новый круиз в существующий список круизов. В настоящее время список выглядит следующим образом:
public static void initializeCruiseList() {
Cruise newCruise = new Cruise("Southern Swirl", "Candy Cane", "Miami", "Cuba", "Miami");
cruiseList.add(newCruise);
Cruise newCruiseTwo = new Cruise("Hippy Train", "Ole Bertha", "Baltimore", "The 70s", "Baltimore");
cruiseList.add(newCruiseTwo);
}
Проблема, с которой я сталкиваюсь, заключается в том, что ввод для раздела «Название корабля» в «addCruise» необходимо проверить, чтобы убедиться, что Корабль уже существует, а также необходимо проверьте, находится ли этот корабль в эксплуатации, который существует как логическое значение в пределах shipList. Список кораблей выглядит так:
public static void initializeShipList() {
add("Candy Cane", 20, 40, 10, 60, true);
add("Peppermint Stick", 10, 20, 5, 40, true);
add("Bon Bon", 12, 18, 2, 24, false);
add("Candy Corn", 12, 18, 2, 24, false);
}
Часть, с которой у меня возникают проблемы, сравнивает пользовательский ввод в методе "addCruise" с именем корабля И логической переменной, учитывая, что пользователь вводит только Строка. В настоящее время это то, что у меня есть:
System.out.println("Enter ship name: ");
String newShipName = newCruiseInput.nextLine();
for(Ship eachShip: shipList) {
if((eachShip.getShipName() != newShipName) && (eachShip.getInService() == false)) {
System.out.println("This ship doesn't exist or isn't in service.");
return;
}
}
Я почти уверен, что проблема с этой текущей настройкой заключается в том, что она выполняет итерацию по всему списку, и, несмотря ни на что, она всегда найдет запись "false". "заставить код действовать так, как будто пользователь ввел неверную запись, даже если он этого не сделал. Итак, как мне go найти имя корабля в записи и затем проверить, чтобы убедиться, что выбранный корабль в данный момент находится в эксплуатации? Если вам нужно больше информации, чем это, просто спросите, и я сделаю все возможное, чтобы предоставить больше.