I am translating 16-bit codes from a legacy device into strings as defined by a table. There are over 2,000 codes, and the codes are not consecutive. 

They are currently defined in a HashMap like this...

```
public class SomeActivity {
    private static final Map<Integer, String> myMap;
    static {
        Map<Integer, String> aMap = ...;
        aMap.put(0x2345, "this");
        aMap.put(0xFEA3, "that");
        ...
        myMap = Collections.unmodifiableMap(aMap);
    }
}

```

This is being ported for android, and I am concerned about how much RAM this will use up on a device. Can I do something similar, but stored in program memory?