我想存储两个带整数键值的整数值

时间:2014-07-07 11:37:13

标签: java android

我想使用整数键存储两个整数值,还请告诉我如何使用键存储和检索数据。

我已经尝试过这个:

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));  

但我无法使用密钥

检索数据

4 个答案:

答案 0 :(得分:0)

使用Map Interface

地图的格式为Map <K, V>,其中:

  1. K:指定此地图中维护的密钥类型。*

  2. V:定义映射值的类型。

  3. 你需要有一个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.int1Object.int2

    获取2个整数

答案 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