我有 12 种方法,如下面的三种方法。我注意到他们都在做同样的功能,唯一改变的是方法的名称和 if 条件。有没有什么聪明的方法可以制作一种可以处理以下条件的通用方法。
旁注:callXCD 是具有这些方法的当前对象的子对象,其方法如“isNational()”受到保护。
public int getNationalTelephonyCost(){
if(callXCD.isNational() && callXCD.isTelephony())
return Integer.parseInt(callXCD.getDiscountedAmount());
else
return 0;
}
public int getOnNetTelephony(){
if(callXCD.isOnNet() && callXCD.isTelephony() && callXCD.isMobileOriginating())
return Integer.parseInt(callXCD.getDiscountedAmount());
else
return 0;
}
public int getLocalData(){
if(callXCD.isLocal() && callXCD.isData())
return Integer.parseInt(callXCD.getDiscountedAmount());
else
return 0;
}