/
Nicholas
/
java_basics
Обзор
Документация
Войти
/
Nicholas
/
java_basics
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
AbstractClasses/practice_1/src/Main.java
50 строк
3 KB
Nicholay Sokolovsky
14 Abstract and Interfaces (fix)
07 сен 2023, 13:00
07 сен 2023, 13:00
6e10460
Код
Авторство
О чём код?
import java.util.ArrayList; public class Main { public static final int MAX_NUM = 15; public static final int MIN_NUM = 30; public static final double MIN_MANAGER_INCOME = 115000; public static final double MAX_MANAGER_INCOME = 140000; public static void main(String[] args) { Company companyOfMyDream = new Company(); ArrayList<Employee> staff = new ArrayList<>(); for (int i = 0; i < 180; i++) { staff.add(new Operator(18000 + i * 100, 60000)); } for (int i = 0; i < 80; i++) { staff.add(new Manager(120000 + i * 1000, Math.round(((Math.random() * (MAX_MANAGER_INCOME - MIN_MANAGER_INCOME)) + MIN_MANAGER_INCOME)))); } for (int i = 0; i < 10; i++) { staff.add(new TopManager(355000 + i * 10000, 300000, companyOfMyDream)); } companyOfMyDream.hireAll(staff); System.out.println("Список из " + MAX_NUM + " самых высоких зарплат по убыванию:"); ArrayList<Employee> topSalaryStaff = companyOfMyDream.getTopSalaryStaff(MAX_NUM); for (Employee rec : topSalaryStaff) { System.out.println(rec.getMonthSalary() + " руб."); } System.out.println("Список из " + MIN_NUM + " самых низких зарплат по возрастанию:"); ArrayList<Employee> lowestSalaryStaff = companyOfMyDream.getLowestSalaryStaff(MIN_NUM); for (Employee rec : lowestSalaryStaff) { System.out.println(rec.getMonthSalary() + " руб."); } for (int i = 0; i < staff.size(); i++) { // Увольняем 50% сотрудников if ((i & 1) == 0) { companyOfMyDream.fire(staff.get(i)); } } System.out.println(); System.out.println("После сокращения штата. Список из " + MAX_NUM + " самых высоких зарплат по убыванию:"); topSalaryStaff = companyOfMyDream.getTopSalaryStaff(MAX_NUM); for (Employee rec : topSalaryStaff) { System.out.println(rec.getMonthSalary() + " руб."); } System.out.println("После сокращения штата. Список из " + MIN_NUM + " самых низких зарплат по возрастанию:"); lowestSalaryStaff = companyOfMyDream.getLowestSalaryStaff(MIN_NUM); for (Employee rec : lowestSalaryStaff) { System.out.println(rec.getMonthSalary() + " руб."); } } }