2016-09-20 125 views
-2
public static Attendant askForAtt() { 
    Scanner scanAtt = new Scanner(System.in); 
    Random randAtt = new Random(); 
    Attendant asnAtt; 
    System.out.println("Do you require an attendant? Y or N"); 
    String response = scanAtt.next(); 
    if ((response.equals("yes")) || (response.equals("Yes"))) { 
     // Cars.setAssignedTo(myAtt.get(randAtt.nextInt(myAtt.size()))); 
     asnAtt = myAtt.get(randAtt.nextInt(myAtt.size())); 
    } else if ((response.equals('n')) || (response.equals('N')) || (response.equals("no")) || (response.equals("No"))) { 
     asnAtt = new Attendant("User"); 
    } 

    return asnAtt; 
    //return myAtt.get(randAtt.nextInt(myAtt.size())); 
} 

所以我有一個車庫類的函數來創建一個參數的汽車。如果用戶需要一個參數,則其中一個參加者類。返回類對象或無對象

public Cars(String carID, String plateNum, String position, Attendant assignedTo, long currTime) { 
    this.carID = carID; 
    this.plateNum = plateNum; 
    Cars.position = position; 
    Cars.assignedTo = assignedTo; 
    this.currTime = currTime; 
} 

所以我必須返回一個我不能的服務員。我認爲它在方法開始時是空的,但是java告訴我要初始化它,而我不知道它是什麼。 另外,如果用戶輸入No,那麼我目前正在返回另一種稱爲用戶的助理。 有什麼方法可以不返回任何內容,因爲現在我必須創建另一個名爲user的助理(這沒有任何意義),我無法爲此創建用戶類。

我剛纔下面的車庫類的一部分,如果你需要 請幫我... 我被卡住,無法找到解決方案。

創造汽車在這裏:

public void addCar() { 
    Cars car = new Cars(Cars.getID(), Cars.askCarID(), Cars.getPosition(), Attendant.askForAtt(), System.currentTimeMillis()); 
    myGarage.add(car); 
    //System.out.println(car); 
} 
+1

可以初始化話務員asnAtt = NULL爲什麼不呢? –

+0

我收到一個錯誤,如果我把null – user6852794

+1

哪個錯誤?異常或編譯器錯誤? –

回答

0

做這樣的事情在你的askForAtt方法

public static Attendant askForAtt() { 
     Scanner scanAtt = new Scanner(System.in); 
     Random randAtt = new Random(); 
     Attendant asnAtt = null; 
     System.out.println("Do you require an Attendant ? Y or N"); 
     String response = scanAtt.next(); 
     if ((response.equalsIgnoreCase(("yes")))) { 
      // Cars.setAssignedTo(myAtt.get(randAtt.nextInt(myAtt.size()))); 
      return myAtt.get(randAtt.nextInt(myAtt.size())); 
     } else if ((response.equalsIgnoreCase("n")) || (response.equalsIgnoreCase("no"))) { 
      return new Attendant ("User"); 
     } 
     return new Attendant ("User"); //If input is neither Yes nor No then return new Attendant  
    }