Voici mon code. Toute aide est appréciée. Je ne suis tout simplement pas capable de lire la liste et de créer une carte. Je passe un List<Map<String, Object>>
comme un paramètre de fonction jusqu'à ce que le calque Rest.In Rest Proxy appelle sa liste simple. Dans ma couche de service, j'ai besoin d'utiliser les valeurs Map stockées dans la liste.Créer HashMap <String,Map> à partir de la liste <Map <String, Object >> donne java.lang.ClassCastException
Ma liste a des valeurs comme indiqué
[{ID=56, VALUE=CPR,DESCRIPTOR=HEAD},
{ID=68,VALUE=RegFinance,DESCRIPTOR=FINANCE}]
Je veux un créer Map<String,Map> using List<Map<String, Object>>
au-dessous le format
{56={ID=56, VALUE=CPR,DESCRIPTOR=HEAD},
68={ID=68,VALUE=RegFinance,DESCRIPTOR=FINANCE}}
Ci-dessous le code approprié avant l'appel de repos est fait par exemple dans la couche contrôleur mais ne fonctionne pas en service couche après repos appel.
Map<String, Object> userRoleMap = new HashMap<>();
for (int count = 0; count < allRolesDetails.size(); count++) {
//Map<String, Object> mapp=allRolesDetails.get(count);
//Above line Gives Exception
String[] singleColumn = allRolesDetails.get(count).toString().split(",");
//Above line Gives Exception
for(String pair : singleColumn)
{
String[] entry = pair.split("=");
userRoleMap.put(entry[1].trim(),allRolesDetails.get(count));
break;//add them to the hashmap and trim whitespaces
}
}
Essayé toutes les autres options sur Stackoverflow
Iterator<Map<String, Object>> it = allRolesDetails.iterator();
while (it.hasNext()) {
Map<String, Object> map = it.next(); //so here you don't need a potentially unsafe cast
for (Map.Entry<String, Object> entry : map.entrySet()) {
System.out.println(entry.getKey() + " = " + entry.getValue());
}
}
Et
for(Map<String, Object> map:allRolesDetails){
for(Map.Entry<String, Object>entry : map.entrySet()){
String Key=entry.getKey();
Object Value=entry.getValue();
}
}
Dans tous les cas, je reçois le ci-dessous exception chaque fois que je me sers allRolesDetails.get(count)
ou que vous essayez à l'utilisateur Iterator ou Carte .Entrée.
java.lang.ClassCastException: java.lang.String ne peut pas être jeté à java.util.Map
Bienvenue dans Stack Overflow! S'il vous plaît [faites le tour] (http://stackoverflow.com/tour) pour voir comment le site fonctionne et quelles questions sont sur le sujet ici, et éditez votre question en conséquence. Voir aussi: [Comment créer un exemple minimal, complet et vérifiable] (http://stackoverflow.com/help/mcve) –
Vous avez deux cartes? –
Oui un est vide Carte userRoleMap dans lequel je veux remplir les valeurs de la liste