Да я знаю, что можно в одну строку, но почему так не работает ??
package com.javarush.task.pro.task13.task1324;
import java.util.Random;
import java.util.TreeMap;
/*
Зарплаты и позиции
*/
public class Solution {
public static void main(String[] args) {
TreeMap<Integer, String> map = new TreeMap<>();
map.put(0, "Newbie");
map.put(300, "Trainee");
map.put(700, "Junior");
map.put(1000, "Strong Junior");
map.put(1700, "Middle");
map.put(2500, "Strong Middle");
map.put(3500, "Senior");
System.out.println();
Random random = new Random();
for (int i = 0; i < 10; i++) {
int salary = random.nextInt(50) * 100;
String position = getJobTitle(map, salary);
System.out.printf("Зарплате $%d соответствует позиция %s%n", salary, position);
}
}
public static String getJobTitle(TreeMap<Integer, String> map, Integer salary) {
if(salary < map.floorKey(300)) {
return map.get(0);
} else if (salary < map.floorKey(700)) {
return map.get(300);
} else if (salary < map.floorKey(1000)) {
return map.get(700);
} else if (salary < map.floorKey(1700)) {
return map.get(1000);
} else if (salary < map.floorKey(2500)) {
return map.get(1700);
} else if (salary < map.floorKey(3500)) {
return map.get(2500);
} else {
return map.get(3500);
}
// return map.floorEntry(salary).getValue();
}
}