2013-09-15 6 views
0

id ценит помощь anyones здесь. Ниже мой класс, который содержит все мои сеттеры и геттеры, в моем основном классе, я создал 3 клиента и в параметрах значения, у меня есть 3 разных номера. Что мне нужно сделать, это найти общее значение всех этих значений, есть ли способ, которым я могу создать метод (см. Бронирование ниже), который будет вычислять и добавлять общее значение параметра каждого клиента? Не важно, что 3 не является фиксированным числом, поэтому метод не должен быть затронут, если я захочу добавить больше клиентов. Это, вероятно, на самом деле основное, но если кто-то может получить меня на правильном пути, что было бы здорово, веселитвычисляет общую стоимость бронирования

public class Customer 
{ 

    private int identity; 
    private String name; 
    private String address; 
    private double value; 

    public Customer() 
    { 
     identity = 0; 
     name = ""; 
     address = ""; 
     value = 0.0; 
    } 

    public void setIdentity(int identityParam) 
    { 
     identity = identityParam; 
    } 

    public int getIdentity() 
    { 
     return identity; 
    } 

    public void setName(String nameParam) 
    { 
     name = nameParam; 
    } 

    public String getName() 
    { 
     return name; 
    } 

    public void setAddress(String addressParam) 
    { 
     address = addressParam; 
    } 

    public String getAddress() 
    { 
     return address; 
    } 

    public void setValue(double valueParam) 
    { 
     value = valueParam; 
    } 

    public double getCarCost() 
    { 
     return value; 
    } 

    public void printCustomerDetails() 
    { 
     System.out.println("The identity of the customer is: " + identity); 
     System.out.println("The name of the customer is: " + name); 
     System.out.println("The address of the customer is: " + address); 
     System.out.println("The value of the customers car is: " + value + "\n"); 

    } 

    public void bookingValue() 
    { 
     //Ive tried messing around with a for loop here but i cant seem to get it working 
    } 


} 
+1

Вместо '// Ive попытался объединиться с циклом for здесь, но я не могу заставить его работать. Поместите код, который здесь не работает, и напишите, что он делает и что вы хотите. Мы не будем писать его для вас 0, это не помогает, а служба кода. – ppeterka

+0

Вы правы, что вам нужен цикл 'for'; покажите нам, что вы пробовали. Кроме того, 'bookingValue()' должен быть 'static' (он будет принимать массив или' Collection' экземпляров 'Customer' в качестве входных данных и не работает с определенным« клиентом »), или он должен быть включен некоторый объект «Бронирование», который «владеет» группой «Клиент». – chrylis

+0

@chrylis Определенно перейдите с объектом «Бронирование» или даже «Список », чтобы избежать использования статики. –

ответ

0

вы можете создать массив объектов класса клиента и доступ к значениям в петле ...

В главной функции: клиент кли [] = новый клиент [ Num];

где Num может быть любое количество, как 3 в вашем случае

затем получить «значение» для каждого клиента .. а затем

public double bookingValue(customer []cus, int length) 
{ 
     double total=0.0; 
    for(int i=0;i<length;i++) 
     total+=a[i].value; 
     return total; 
}' 

возвращение общее значение, где вы хотите использовать .. ...

+0

Спасибо человек, я еще не делал массивы, но немного почитал о них там, я все время общался с этим утром и, наконец, работал, спасибо за помощь – user2757842

0

Как и в реальной жизни, один клиент ничего не знаю о других клиентах не знает. Если вы спросите клиента в магазине, сколько всего потратили клиенты, он будет выглядеть так же запутанным, как другие, читающие этот вопрос. Я предлагаю внедрить некоторый CustomerManager или Bookkeeper, который будет содержать всех клиентов внутри страны (например, в списке). Этот CustomerManager должен иметь методы для добавления и удаления клиентов - метода getBookingValue(), который перемещается по всем клиентам в списке клиентов CustomerManager и возвращает общее значение и, если хотите, некоторые другие методы комфорта. В качестве примера:

public interface CustomerManager { 
    public void addCustomer(Customer customer); 
    public void removeCustomer(Customer customer); 
    public List<Customer> getCustomersByDate(long from, long to); 
    public double getBookingValue(); 
    public double getBookingValue(List<Customer> customerList); 
    public List<Customer> getByAddress(String address); 
    public List<Customer> getByName(String name); 
} 
Смежные вопросы