2012-04-10 5 views
-2

У меня возникли проблемы с написанием метода расчета общего количества заказов на университетский проект. Eclipse говорит, что есть ошибка, детализируя только то, что + является недопустимым AssignmentOperator.Добавление удвоений друг к другу

Некоторые детали:

  • Там нет никаких проблем конфиденциальности.
  • количество is int.
  • getPrice() возвращает двойной.
  • общая является двойной

Это, вероятно, что-то очень простое, но из-за того, ища вокруг ответа довольно сложно.


public double calculateTotal(){ 
    for(OrderItem currentItem:items){ 
     for(int i=0;i<currentItem.quantity;i++){ 
      total+currentItem.product.getPrice(); 
     } 
    } 
    return total; 
} 

ответ

7

Я думаю, что вам нужно +=:

public double calculateTotal(){ 
    for(OrderItem currentItem:items){ 
     for(int i=0;i<currentItem.quantity;i++){ 
      total += currentItem.product.getPrice(); 
     } 
    } 
    return total; 
} 

В вашем примере вы просто добавить два числа вместе, и ничего не делать с результатом. Вам нужно присвоить результат переменной. Использование += является сокращением на total = total + currentItem.product.GetPrice();

Возможно, вам также потребуется инициализировать переменную total; но, возможно, это в другом месте вашего класса.

+0

+1 за то, что самый быстрый :) –

+0

Хорошо, что работает, спасибо большое! – gideonparanoid

+0

Да, я уже инициализировал переменную в конструкторе, ура. – gideonparanoid

1

Вы не можете просто добавить два значения, не делая ничего с результатом. Я подозреваю, что вы имели в виду

 total += currentItem.product.getPrice(); 
1

Вместо + Используйте +=:

total += currentItem.product.getPrice(); 
Смежные вопросы