2014-01-23 27 views
0

我已經創建了ticketAgent和ticketType類,並且我嘗試添加字符串的時間很艱難。我試過使用包裝類,但不知道這是否是正確的方法。我粘貼了我的代碼,然後分別粘貼了提示符。謝謝您的幫助。我是第一次發佈海報,所以我希望我已遵循發佈指南。如何添加不同名稱的字符串

提示:

編寫一個叫做TicketBooth程序實例在3個不同的機票代理商。 TicketBooth程序應提示用戶爲他們希望購買機票的機票代理商,然後顯示可用的機票類型和價格列表。 TicketBooth程序應該允許用戶選擇要購買的票。選擇了車票類型後,TicketBooth程序應顯示:

•對於機票代理商 總銷售額•通過機票代理 出售•所有機票代理商售出的機票總數的門票總數

TicketBooth程序應該繼續提示用戶從其中一個票務代理處購買票證,直到用戶鍵入退出。

package Exercises; 
    import java.util.Scanner; 

    public class TicketBooth { 

     private static Scanner input; 

     public static void main(String[] args) { 

      input = new Scanner(System.in); 

       String ticketAgent = "sam", "nicole" , "alex"; 
       String ticketType = "one"; 
       int t = Integer.parseInt(ticketAgent); 
       int s = Integer.parseInt(ticketType); 
       int sum; 

       System.out.println("Please select your ticket agent: "); 
       ticketAgent = input.next(); 

       System.out.println("Please select your ticket type or press -1 to quit: "); 
       ticketType = input.next(); 

       sum = t +s; 
       System.out.println("The total tickets that were sold were: " + sum); 



     } 
    } 






package exercises; 

public class TicketAgent { 

private static int numOfTicksPerAgent; 

    private String agentName; 
    private int numSold = 0; 
    private double totalSales = 0.0; 

    public TicketAgent(String agent) { 
     agentName = agent; 

     numSold = 0; 
     totalSales = 0.0; 
     numOfTicksPerAgent += 1; 
    } 

    public void sellTicket(TicketType tt) { 
     numSold++; 
     totalSales = totalSales + tt.getticketPrice(); 
     numOfTicksPerAgent++; 
    } 

    public double gettotalSales() { 
     return totalSales; 
    } 

    public double getnumSold() { 
     return numSold; 
    } 

    public double getnumOfTicksPerAgent() { 
     return numOfTicksPerAgent; 

    } 
} 








package exercises; 




public enum TicketType 
{ 
    CHILD (6.50), 
    ADULT (9.50), 
    SENIOR (6.50); 

private double tikPrice; 
TicketType(double price) 
{ 
    tikPrice = price; 
} 
public double getticketPrice() 
{ 
return tikPrice; 

    } 
} 
+3

「sam」或「nicole」是一個合理的整數? (我很確定亞歷克斯是一個浮動。) –

+0

你的'TicketAgent'和'TicketType'類在哪裏?或者你指的是(打破)'ticketAgent'和'ticketType'字符串實例? –

+0

@DaveNewton我相當確定「one」是一個整數,但不是在這種情況下。 –

回答

1

的問題是,它似乎這是你的功課, 沒有人願意讓你的家庭作業給你。

編輯:我看到你剛剛添加了你的類。 您只需添加do while循環 並以正確的方式實例化您的代理。 哪裏,確切地說,你的問題?所以我們可以幫助你更好。

我的第一個方法是,使之簡單, 寫一個TicketAgent 類和TicketType

以某種方式編寫TicketAgent,可以將 代理的名稱和類型放入構造函數

TicketAgent agentSam = new TicketAgent("Sam", new ExpensiveTicket()); 

添加setter和getter方法

而且TicketType需求的價格浮動價值,也許字符串描述 或類似的東西。

完成此操作後,請返回主要課程。 打開做while循環並設置爲循環參數爲用戶布爾 值中止,這是假的開頭和如果 更改的用戶類型的退出命令。

在循環之前,使用票證實例化代理程序。

顯示名稱和價格。顯示門票。一起計數。要求中止。

希望這會有所幫助。 對不起,我的英語不是我的母語。

additional: 



private boolean userWantsToQuit = false; 
private List<TicketAgent> avaibleAgents = new ArrayList<TicketAgent>(); 
private List<TicketAgent> usedAgents= new ArrayList<TicketAgent>(); 
private List<TickeType> boughtTickets= new ArrayList<TicketType>(); 

main(...){ 

    agents.add(new TicketAgent("Sam")); 
    agents.add(new TicketAgent("wise")); 
    agents.add(new TicketAgent("gamgee")); 

    do{ 

    usedAgents.add(askUserForAgent()); //extra static method 
    boughtTickets.add(askUserForType(agent)); //extra static method 
    userWantsToQuit = askUserToQuit();//extra static method 
    }while(!userWantsToQuit); 

    displayAgentSummary(usedAgents); 
    displayTicketSummary(boughtTickets); 
} 

[...] 

public static displayAgentSummary(List<TicketAgent> agents) 
{ 
    for(TicketAgent agent : agents) 
    { 
     System.out.println("Served by: " + agent.getName()); 
    } 
} 

public static displayTicketSummary(List<TicketType> tickets) 
{ 
    float totalPrice = 0; 
    for(TicketType ticket : tickets) 
    { 
     totalPrice =+ ticket.getPrice(); 
     System.out.println("You bought a " + ticket.getName() + " for " + ticket.getPrice()"; 
    } 
    System.out.println("You bought tickets in total for " + totalPrice + " dollar". 
} 
相關問題