Как распечатать значения, которые были увеличены в массиве? - PullRequest
0 голосов
/ 05 декабря 2018

У меня есть этот код, который предназначен для получения значений типа double из массива и увеличения их на процентную величину.

public class Company {
static ArrayList<Employee> employees;

public Company() {
    Company.employees = new ArrayList<Employee>();
}


    public ArrayList<Employee> getEmployees() {
        return employees;
    }

    public void setEmployees(ArrayList<Employee> employees) {
        Company.employees = employees;
    }

        public void increaseSalaries(double rate) {
            if (rate <= 0.0) {
                throw new IllegalArgumentException();
            } else {
            for (int i = 0 ; i < employees.size() ; i++) {
                employees.get(i).increaseSalaries(rate);
                }
            }
        }

    public static void main(String[] args) {
        Company businesstown = new Company();
        HourlyEmployee george;
        MonthlyEmployee ambrose;
        george = new HourlyEmployee("George", "McClellan", "1537", 1.04);
        ambrose = new MonthlyEmployee("Ambrose", "Burnside", "1536", 741.0);
        businesstown.getEmployees().add(george);
        businesstown.getEmployees().add(ambrose);
        double increase = 20.0;
        System.out.println(businesstown);
        businesstown.increaseSalaries(increase);
        System.out.println(businesstown);

    } 

}

Я хочу распечатать объекты внутри массива до и после увеличения, но я не уверен, как.Текущие команды печати являются заполнителями, поскольку я знаю, что они неверны.Я пробовал другие методы, такие как

for (Object[] array : list) {
    System.out.println(Arrays.toString(array));
}

, но это не сработало.Что будет работать в этом случае?

1 Ответ

0 голосов
/ 05 декабря 2018

Вы можете использовать для каждого цикла, чтобы распечатать все содержимое массива:

for(Employee e: employees){
    System.out.println(e.getSalary());
}
...