import java.util.ArrayList; import java.util.List; /** * Learn Java from https://www.liaoxuefeng.com/ * * @author liaoxuefeng */public class Main { public static void main(String[] args) { // TODO: 用接口给一个有工资收入和稿费收入的小伙伴算税: //Income[] incomes = new Income[]{new SalaryIncome(7500), new RoyaltyIncome(12000)}; List incomes = new ArrayList(); incomes.add(Income.income); incomes.add(new SalaryIncome(7500)); incomes.add(new RoyaltyIncome(12000)); double total = 0; // TODO: for (Object income : incomes) { if (!(income instanceof Income)) { total += (double) income; } if (income instanceof Income i) { total += i.getTax(); } } System.out.println(total); } } interface Income { // TODO public static final Double income = 3000.00; double getTax(); } class SalaryIncome implements Income { // TODO double income; public SalaryIncome(double income) { this.income = income; } @Override public double getTax() { if (income <= 5000) { return 0; } return (income - 5000) * 0.2; } } /** * 稿费收入税率是20% */class RoyaltyIncome implements Income { // TODO double income; public RoyaltyIncome(double income) { this.income = income; } @Override public double getTax() { return (income * 0.2); } }
Sign in to make a reply
ANGERIED