Не удается найти символ в простом и немного избыточном коде

1

когда я компилирую этот код, он дает мне ошибку: не удается найти символ> investmentAmount в последнем сегменте. Если я выберу указанный сегмент:

JOptionPane.showMessageDialog(null, "The total amount you have to pay after 5 years is " 
+ Math.pow(investmentAmount(interestRate+1),5));

то остальная часть кода работает, за исключением того, что мне нужен этот сегмент кода для передачи. Если я выберу InvestmentAmount в этом сегменте, но сохраняю интересRate, тогда код работает отлично и дает мне сумму через пять лет. Почему investAmount работает раньше в коде, а не в конце? Почему InterestRate не испортит код в конце и investmentAmount? Здесь весь code-

import javax.swing.JOptionPane;

public class Ch3IndLabAssignment
{
public static void main( String [] args )
{
String investorName = JOptionPane.showInputDialog( null, "Please enter your first and last name");
JOptionPane.showMessageDialog(null, "Your name is " + investorName);

String input = JOptionPane.showInputDialog( null, "Please enter your investment amount");
double investmentAmount = Double.parseDouble(input);
JOptionPane.showMessageDialog(null, "Your investment amount is " + investmentAmount);

String input2 = JOptionPane.showInputDialog( null, "Please enter the interest rate as a decimal");
double interestRate = Double.parseDouble(input2);
JOptionPane.showMessageDialog(null, "Your interest rate is " + interestRate);

JOptionPane.showMessageDialog(null, "The total amount you have to pay back after 5 years is " +
Math.pow(investmentAmount(interestRate+1),5));
}
}
  • 0
    Это сработало! Спасибо, парни
Теги:

3 ответа

1

Вы, вероятно, хотели написать:

Math.pow(investmentAmount * (interestRate+1), 5));

В математике A (B) часто означает, что A умножается на B. В программировании это часто означает, что A является функцией, а B является одним из его аргументов. Компилятор ищет метод (а не переменную), называемый investmentAmount поскольку он не может найти метод, соответствующий этому символу, вы получите ошибку "не найти символ".

1

В коде

JOptionPane.showMessageDialog(null, "The total amount you have to pay after 5 years is " 
+ Math.pow(investmentAmount(interestRate+1),5));

Вы рассматриваете investmentAmount как метод с одним параметром, который представляет interestRate+1. Возможно, вы имели в виду:

JOptionPane.showMessageDialog(null, "The total amount you have to pay after 5 years is " 
+ Math.pow(investmentAmount*(interestRate+1),5));

Обратите внимание на *.

0

Большинство языков программирования, включая Java, не выполняют неявное умножение. Вы пытаетесь использовать свою переменную в качестве имени метода. Используйте * для умножения.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню