¿Cómo ordenar una ArrayList de HashMaps con varios pares clave-valor cada uno?

Necesito llamar a una API externa con una ArrayList de HashMaps que contenga varios pares de valores clave predefinidos cada uno. Un ejemplo

ArrayList<HashMap<String, String>> arrayListHashMap = new ArrayList<HashMap<String, String>>();

    {
        HashMap hashMap = new HashMap<String, String>();
        hashMap.put("key", "A key");
        hashMap.put("value", "B value");
        arrayListHashMap.add(hashMap);
    }

    {
        HashMap hashMap = new HashMap<String, String>();
        hashMap.put("key", "B key");
        hashMap.put("value", "A value");
        arrayListHashMap.add(hashMap);
    }

Ahora necesito ordenar esta construcción según el contenido de la clave "valor". Este tipo daría como resultado la entrada "clave = clave B / valor = valor A" como la primera en el arrayListHashMap.

Cualquier ayuda es muy apreciada

HJW

Respuestas a la pregunta(2)

Su respuesta a la pregunta