Да я знаю, что можно в одну строку, но почему так не работает ??
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();
    }
}