Pair(搭配ArrayList)数据结构的使用实例

在一些开发场景下,既需要已键值的方式存储数据列表,还需要在输出的时候保持和插入数据的顺序不变。HashMap满足前者,ArrayList则满足后者,这时候就可以选择Android提供的一种工具类:Pair(搭配ArrayList)。
当然,如果仅仅是为了保证数据的插入和输出顺序一致的话, 可以选择使用LinkedHashMap, 但我们知道, Map要求Key不能重复, 如果我们还准许Key可以重复的话, 就只能选择使用"Pair(搭配ArrayList)"这种结构了.

eg.

List> list = new ArrayList>();
1. Pair 实例

Pair生成实例的方式有两种:

Pair pair = new Pair(1, "3");

or

Pair pair = Pair.create("1", 3);

实际上方式二在内部的实现只是对方式一的调用:

public static  Pair  create(A a, B b) {
    return new Pair(a, b);
}

同时可以看出,Pair接收的数据类型是两个泛型,因此可以传入自定义的实体类。

2. 如何取值

Pair内部数据的存储如下:

public class Pair {
    public final F first;
    public final S second;
    ...
}

仅仅使用了两个public的变量,因此在取值时可以直接取用。

int key = pair.first;
String value = pair.second;
3. 实际使用
            List> list = new ArrayList>();

            Delivery[] deliveries = mConfigBean.dat.deliveries;
            for(int i=0;i(source, placementKey));
                }
            }

---------DONE.---------

你可能感兴趣的:(Pair(搭配ArrayList)数据结构的使用实例)