HOW CAN I AUTO BOX THIS CLASS?

Andrew Deniel

Total Post:29

Points:203
Posted by  Andrew Deniel
Java 
 949  View(s)
Ratings:
Rate this:

I've the following class:

public class IntegerKey extends Number implements Comparable<IntegerKey> {
    private Integer m_key;
    public IntegerKey(Integer key) {
        m_key = key;
    }
    public IntegerKey(int key) {
        m_key = key;
    }
}

I would like to use this class as Follow:

assume I have the following generics:

Map<IntegerKey, MyCache> map = new HashMap<IntegerKey, MyCache>();
map.put(5, new MyCache());

This doesn't compile, why?? I don't want to do:

map.put(new IntegerKey(5), new MyCache());

Thank you!

  1. Garry Winogrand

    Post:24

    Points:168
    Re: How can I auto box this class?

    Autoboxing only works for the primitives types and their respective counter parts in java.lang. In your example you could try dropping IntegerKey altogether and simply use Integer.        

Answer

NEWSLETTER

Enter your email address here always to be updated. We promise not to spam!