我迷路了!我正在参加在线 Java 类(class),需要完成这项作业的帮助。 程序编译后会产生找不到符号错误
Loan loan = new Loan(annualInterestRate, numberOfYears, loanAmount);
symbol: class Loan
location: class ChangeRequest5
我尝试在 ChangeRequest5 类中创建 Loan 类以及 getMonthlyPaymen 方法。该程序运行干净且成功的构建,并创建利率、贷款期限和贷款金额的用户输入,但不会显示表格。
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class ChangeRequest5 {
public static void main(String[] args) {
Object[] rateList = new Object[9];
int i = 0;
for (double rate = 5; rate <=6; rate += 1.0 /4)
rateList[i++] = new Double (rate);
Object annualInterestRateObject = JOptionPane.showInputDialog(
null, "Select annual interest rate:" , "Mortgage Calculator" ,
JOptionPane.QUESTION_MESSAGE, null, rateList, null);
double annualInterestRate =
((Double)annualInterestRateObject).doubleValue();
Object[]yearList = {new Integer(7), new Integer(15), new Integer(30)};
Object numberOfYearsObject = JOptionPane.showInputDialog(
null, "Select number of years:" , "Mortgage Calculator" ,
JOptionPane.QUESTION_MESSAGE, null, yearList, null);
int numberOfYears = ((Integer)numberOfYearsObject).intValue();
String loanAmountString = JOptionPane.showInputDialog(null,
"Enter loan amount, for example 200000 for $200000.00" , "Mortgage Calculator" ,
JOptionPane.QUESTION_MESSAGE);
double loanAmount = Double.parseDouble(loanAmountString);
Loan loan = new Loan(annualInterestRate, numberOfYears, loanAmount);
double monthlyPayment = loan.getMonthlyPayment();
String output = "Interest Rate:" + annualInterestRate +
"%" + "Number of Years:" + numberOfYears + " Loan Amount: $"
+ loanAmount;
output += " Monthly Payment: " + "$" + (int)(monthlyPayment * 100) /100.0;
output += " Totaly Payment $" + (int) (monthlyPayment * 12 * numberOfYears
* 100) / 100.0;
double monthlyInterestRate = annualInterestRate / 1200;
double balance = loanAmount;
double interest;
double principal;
output += " Payment#\tInterest\rPrincipal\tBalance";
for (i = 1; i <= numberOfYears * 12; i++){
interest = (int)(monthlyInterestRate * balance * 100) / 100.0;
principal = (int)((monthlyPayment - interest) * 100) / 100.0;
balance = (int)((balance - principal) * 100) / 100.0;
output += i + "\t" + interest + "\t" + principal + "\t" + balance;
}
JScrollPane jsp = new JScrollPane(new JTextArea(output));
jsp.setPreferredSize(new java.awt.Dimension(400, 200));
JOptionPane.showMessageDialog(null, jsp,
"Mortgage Calculator" , JOptionPane.INFORMATION_MESSAGE, null);
}
}
最佳答案
您是否有一个在同一包中定义类 Loan
的文件 Loan.java
?如果它在同一个包中,它应该可以工作。
如果它位于不同的包中,您需要将其导入到其他 .java 文件中:
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import package2.Loan;
public class ChangeRequest5 {
关于Java程序错误: cannot find symbol,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9859893/