Dictionary

A dictionary is a container type that holds a list of unique key-value pairs.

Creating a Dictionary

The constructor of BasicDictionary is as follows:

public BasicDictionary(DATA_TYPE keyType, DATA_TYPE valueType, int capacity)

Parameters

  • keyType: An enum declaring the data type of the keys.
  • valueType: An enum declaring the data type of the values.
  • capacity (optional, default 0): An integer specifying the initial capacity of the dictionary. The dictionary will automatically double its capacity when the number of key-value pairs exceeds capacity.

Usage

  1. You can add a key-value pair to the BasicDictionary using the put method.

    BasicDictionary basicDictionary = new BasicDictionary(Entity.DATA_TYPE.DT_STRING, Entity.DATA_TYPE.DT_INT);
    // key type: BasicString, value type: BasicInt
    basicDictionary.put(new BasicString("1"),new BasicInt(2));
  2. You can retrieve the value to a key using the get method.

    BasicDictionary basicDictionary = new BasicDictionary(Entity.DATA_TYPE.DT_STRING, Entity.DATA_TYPE.DT_INT);
    basicDictionary.put(new BasicString("1"),new BasicInt(2));
    System.out.println(basicDictionary.get(new BasicString("1")));
    // output: 2
  3. You can query all keys using the keys method.

    Note: Unlike BasicSet, the keys method of BasicDictionary returns a set with a generic type of Entity. For example:

    BasicDictionary basicDictionary = new BasicDictionary(Entity.DATA_TYPE.DT_STRING, Entity.DATA_TYPE.DT_INT);
    basicDictionary.put(new BasicString("1"),new BasicInt(1));
    basicDictionary.put(new BasicString("2"),new BasicInt(2));
    basicDictionary.put(new BasicString("3"),new BasicInt(3));
    Set<Entity> entities = basicDictionary.keys();
    for (Entity e : entities) {
        System.out.print(e.getString() + " ");
    }
    // output: 1 2 3 
  4. You can directly get the key-value mappings in BasicDictionary using the getString method:
    BasicDictionary basicDictionary = new BasicDictionary(Entity.DATA_TYPE.DT_STRING, Entity.DATA_TYPE.DT_INT);
    basicDictionary.put(new BasicString("1"),new BasicInt(4));
    basicDictionary.put(new BasicString("2"),new BasicInt(5));
    basicDictionary.put(new BasicString("3"),new BasicInt(6));
    System.out.println(basicDictionary.getString());
    // output: {1,2,3}->{4,5,6}