누군가 내 baggage
이 인쇄되지 않는 이유를 말해 줄 수 있습니까?LinkedList가 공백으로 인쇄되는 이유는 무엇입니까?
승객 이름으로는 존을 입력합니다. 내가 어떤 금액을 입력 할 수있는 수하물의 개수를 들어 095
: I 입력 항공편 번호에 대한
BI : I 입력 국가 코드
.
의 내가 입력한다고 가정 해 봅시다 : 존, BI, 095, 3이 내가 무엇을 얻을 : 코드가 매우 지저분한 경우 내가 [John with baggage(s) [BI0950, BI0951, BI0952]]
죄송 점점되어야 할 때 [John with baggage(s) [, , ]]
을.
변경되었습니다. 고마워. 당신이 당신의 루프가 쓸모가이 경우, 어느 루프 내부에 설정되지 않은 x
변수를 반환하는 루프 후 볼 수
import java.util.*;
public class baggageSys{
public static String getUser_command(){
Scanner keyboard = new Scanner(System.in);
System.out.print("Enter command B-baggage, n-next, q-quit");
String s = keyboard.nextLine();
return s;
}
public static String getUser_flight(){
Scanner keyboard = new Scanner(System.in);
System.out.println("Please enter the flight number");
String s = keyboard.nextLine();
return s;
}
public static String getPassenger(){
Scanner keyboard = new Scanner(System.in);
System.out.println("Please enter passenger name");
String s = keyboard.nextLine();
return s;
}
public static String getUser_country(){
Scanner keyboard = new Scanner(System.in);
System.out.println("Please enter the country code");
String s = keyboard.nextLine();
return s;
}
public static int getUser_number(){
Scanner keyboard = new Scanner(System.in);
System.out.println("Please enter number of baggage");
int s = keyboard.nextInt();
return s;
}
public static String next(ListIterator<Passenger> passenger){
String k = "";
passenger.next();
return k;
}
public static String makeBaggage(String country, String flight, int num){
return country + flight + num;
}
public static void main(String args[]) {
LinkedList<Passenger> passenger = new LinkedList<Passenger>();
ListIterator<Passenger> iterator = passenger.listIterator();
LinkedList<String> baggage = new LinkedList<String>();
String command = "";
while (!command.equals("q")){
command = getUser_command();
if(command.equals("B") || command.equals("b")){
String p = "";
p = getPassenger();
passenger.add(new Passenger(p));
// command = getUser_command();
String country = "";
country = getUser_country();
String flight = "";
flight = getUser_flight();
int amount = 0;
amount = getUser_number();
String[] bg = new String[amount];
for(int i = 0; i < amount; i++){
bg[i] = makeBaggage(country, flight, i);
baggage.add(bg[i]);
System.out.println(bg[i]);
passenger.getLast().setBaggages(baggage);
}
System.out.println(passenger);
} else if(command.equals("n")){
next(iterator);
}
else
System.out.println("Enter 'q' to end the program");
}
}
public static class Passenger {
String passengers;
List<String> baggage;
public Passenger(String passengers) {
this.passengers = passengers;
baggage = Collections.emptyList();
}
public void setBaggages(List<String> baggage) {
this.baggage = baggage;
}
@Override
public String toString() {
return passengers + " with baggage(s) " + baggage;
}
}
}
'makeBaggage' 메소드를 디버그하십시오. 또는, 도대체 그냥 읽으십시오. –
'next (ListIterator)'메소드가 생각하고있는 것에 대해 생각하고 싶을지도 모른다. –
@AndyTurner 나는 next() 메서드를 사용하고있다. 미안하지만 읽는 것만으로 무엇을 의미합니까? –