我想使用整数键存储两个整数值,还请告诉我如何使用键存储和检索数据。
我已经尝试过这个:
static HashMap<Integer, User> nodes = new HashMap<Integer, User>();
public User( int b, int c) {
xco = b;
yco = c;
}
我将值存储为
User.nodes.put(User.key,new User((int)upx,(int)upy));
但我无法使用密钥
检索数据答案 0 :(得分:0)
使用Map Interface
地图的格式为Map <K, V>
,其中:
K:指定此地图中维护的密钥类型。*
V:定义映射值的类型。
你需要有一个2个整数值的对象:
class Object{
Integer int1;
Integer int2;
}
Map<Integer,Object> map;
获得价值
Object result = map.get(1) // will return the first object which contain 2 integers
您可以使用Object.int1
和Object.int2
答案 1 :(得分:0)
如果我理解这个问题。 如果您的值明显较大,则可以使用以下方法:v1 * 10 ^ n + v2 其中v2&lt; 10 ^ N
答案 2 :(得分:0)
使用SparseIntArray这是存储int
键值对
SparseIntArray sparseIntArray new SparseIntArray();
sparseIntArray.put(int_key,int_value);
同时确定价值
sparseIntArray.get(int_key);
答案 3 :(得分:0)
首先,你的问题并没有太多描述你的要求,到目前为止你尝试了什么。
但假设您的问题,您可以尝试如下。
您可以将Map<Key,Value>
整数值设为Key
,将整数List<Integer>
设为Value
Map<Integer,List<Integer>> map=new HashMap<>();
List<Integer> list=new ArrayList<>();
list.add(1);
list.add(2);
map.put(1,list);// key is 1, values 1 and 2
您可以按如下方式检索值
map.get(1) // will return list which contains values 1 and 2
编辑:
HashMap<Integer, User> nodes = new HashMap<Integer, User>();
User user=new User(1,2);// creating a user
nodes.put(1,user);
现在你可以获得价值
nodes.get(1)// will return user