猿问

Java 编码 - 创建答案变量的多个变量

需要来自编码之神的指导,告诉我如何让我的代码做我需要的。


所以情况是: 我需要告诉程序运行票价乘以购买的票数的计算。看起来容易吗?但是- 在此之前有三个变量。


见下文:


    int TicketType = 0;

    double ChildTicket = 18.00;

    double AdultTicket = 36.00;

    double SeniorTicket = 32.50;

    int TicketQuantity = 0;

    double TotalCost = ?

本质上 - 我需要从伪代码级别发生什么才能使这更容易:


Compute TotalCost = Result of ticket type (ChildTicket,AdultTicket or SeniorTicket) * TicketQuantity

任何帮助都会很棒!:)


慕哥6287543
浏览 216回答 3
3回答

繁星coding

您可以使用switch语句来找出TicketType(儿童、成人、老年人)以及price单张票的票数:double price;switch(TicketType){    case 1:        price = ChildTicket;        break;    case 2:        price = AdultTicket;        break;    case 3:        price = SeniorTicket;        break;       default:        // use default value for price or throw an error}那么乘以price用TicketQuantity得到TotalCost:double TotalCost = price * TicketQuantity;注意: Java 命名约定说,变量应该总是以小写字母开头,而不是TotalCost喜欢totalCost等。

当年话下

您可以将变量作为值存储到双精度数组中,然后可以使用 TicketType 中的索引访问该值。像这样:int TicketType = 0;double ticketsValues[] = [18.00,32.00,32.50]; //The first position is ChildTicket, the 2nd AdultTicket and so..int TicketQuantity = 0;double TotalCost = ticketsValue[TicketType] * TicketQuantity;//Here you access to the value depending on the TicketType.

大话西游666

有不同的方法来解决这个问题。我建议Enum为不同类型的票创建一个。public enum TicketType {    SENIOR(32.50D),    ADULT(36.00D),    CHILD(18.00D);    private final double price;    TicketType(double price) {        this.price = price;    }    public double getPrice() {        return price;    }    public double getCalculatedPrice(int ticketAmount) {        return price * ticketAmount;    }}相反,您也可以尝试这种方式int ticketType = 0; //changedouble[] prices = {32.50D, 36.00D, 18.00D}; //Senior, Adult, Childint ticketQuantity = 0; //changeint totalCost = prices[ticketType] * ticketQuantity;您应该检查的一些补充ticketType是不大于或小于prices大小以避免ArrayIndexOutOfBoundsException. 您还应该检查数量是否不小于零。
随时随地看视频慕课网APP

相关分类

Java
我要回答