floorEntry for java中的双数字

时间:2013-05-02 12:35:57

标签: java hashmap

我将连续范围的双数分成几个子范围。我尝试创建一个方法,以便将每个子范围映射到特定的字符串值:

static NavigableMap < Double, String > RRMap = new TreeMap < Double, String > ();
static HashMap < String, Double > qualityMap = new HashMap < String, Double > ();

public static void main(String args[]) {

    qualityMap.put("Key", 0.3);
    RRMap.put(0.0, "A"); // 0..11     => Bradypnea
    RRMap.put(1.2, "B"); // 12..14    => Unreliable_Ranges
    RRMap.put(1.5, "C"); // 15..20    => Normal Activity
    RRMap.put(2.1, "D"); // 21..25    => Unreliable_Ranges
    RRMap.put(2.6, "E");

    method();

}

// lines of codes
public static void method() {

    System.out.println(floorEntry(qualityMap.get("Key")).getValue());

}

在名为“method”的函数中,我想打印映射到qualityMap中存在的数字的字符串值,并且是“key”的值。但它不起作用,我在行中遇到错误:

     System.out.println(floorEntry(qualityMap.get("Key")).getValue());

它表示floorEntry不适用于双倍数。我研究http://docs.oracle.com/javase/6/docs/api/java/util/TreeMap.html但是,对于floorEntry论证者的类型没有任何限制。我需要指导才能将双数范围映射到特定值。

1 个答案:

答案 0 :(得分:0)

好吧,我发现了问题。我改变了错误的代码行:

    System.out.println(RRMap.floorEntry(qualityMap.get("Key")).getValue());

它有效!