-3
我正在使用以下代碼來獲得加拿大抵押貸款付款,並在第15行中收到「無法解析爲變量」消息。我做錯了什麼? 我的電腦設置爲加拿大法語。使用NumberFormat時,語言環境無法解析爲變量爲什麼?
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.text.NumberFormat;
import java.util.Currency;
public class Mortgage {
public static void main(String args[]) throws IOException {
NumberFormat canadaFrench = NumberFormat.getCurrencyInstance(Locale.CANADA_FRENCH);
BufferedReader keyboard = new BufferedReader(new InputStreamReader(System.in));
double principal, rate, ratePercent, rateFinal;
int years, n;
final int paymentsPerYear = 12;
final int timesPerYearCalculated = 12;
double effectiveAnnualRate;
double payment;
System.out.print("How much are you borrowing? ");
principal = Double.parseDouble(keyboard.readLine());
System.out.print("What's the interest rate? ");
ratePercent = Double.parseDouble(keyboard.readLine());
rate = ratePercent/100.00;
System.out.print("How many years are you taking to pay? ");
years = Integer.parseInt(keyboard.readLine());
System.out.println("------------------------------");
n = paymentsPerYear * years;
// Hypothèque canadienne avec un taux capitalisé deux fois l'an,
// d'où le calcul de l'équivalance des taux!
rateFinal = 12.0 * (Math.pow(1.0 + (rate/2.0), (2.0/12.0)) - 1.0);
effectiveAnnualRate = rateFinal/paymentsPerYear;
payment = principal * (effectiveAnnualRate/(1 - Math.pow(1 + effectiveAnnualRate, -n)));
System.out.print("Your monthly payment is ");
System.out.println(canadaFrench.format(payment));
System.out.println();
}
}
是否缺少進口java.util.Locale中;聲明 –