您好,我创建了一个类来运行另一个测试类,但我面临一些问题。我已将agePremium 和ticketPremium 声明为私人双打。后来我用两种方法分别计算保费。但是当它到达我想要在另一个计算中使用计算变量的部分时
/*
public double premium() {
if (ticket <4){
return ((BASE_PREMIUM*value) * agePremium) * ticketPremium;
}
else {
System.out.println("Sorry, you have too many tickets !!");
return 0;
}
}
*/
它不会从我的方法中读取值,而是从声明和初始化中读取 1。
私人双agePremium =1;私人双票Premium =1;
它使它们成倍增加。
我如何让它们将它们相互链接并用新值替换 1 并相乘。谢谢
import java.util.Scanner;
public class Driver {
private int age;
private int ticket;
private double value;
final double BASE_PREMIUM=0.05;
private double agePremium =1;
private double ticketPremium =1;
Scanner scanner = new Scanner(System.in);
public void read() {
System.out.println("Driver’s Age?");
age = scanner.nextInt();
System.out.println("Number of Tickets?");
ticket = scanner.nextInt();
System.out.println("Value of Car?");
value = scanner.nextDouble();
}
public double premium() {
if (ticket <4){
return ((BASE_PREMIUM*value)*agePremium)*ticketPremium;
}
else {
System.out.println("Sorry, you have too many tickets !!");
return 0;
}
}
public void premiumAge() {
if (age > 29) {
agePremium += 0;
}
else if (age <= 29 && age >= 25) {
agePremium += 0.10;
}
else {
agePremium += 0.15;
}
}
public void premiumTicket() {
switch (ticket) {
case '1':
ticketPremium += 0.1;
break;
case '2':
ticketPremium += 0.25;
break;
case '3':
ticketPremium += 0.50;
break;
case '0':
ticketPremium += 0.00;
default:
ticketPremium = 0.00;
break;
}
}
}