map范围搜索

195 阅读1分钟

业务场景:

  • 消费0到5000是vip1
  • 消费5000到10000是vip2
  • 消费10000到80000是vip3 怎么判断一个用户消费金额是哪个阶段(不用if else)
可以使用treeMap
    NavigableMap<Integer, String> map = new TreeMap<>();
    map.put(0,"vip1");
    map.put(100,"vip2");
    map.put(200,"vip3");
    System.out.println(map.floorEntry(300).getValue());
  • 0<消费金额<100 vip1
  • 100<消费金额<200 vip2
  • 200<消费金额<300 vip3 不在范围内会报错