java.lang.Lange nicht gegossen werden, um java.lang.String in Java
Ich bin immer Reaktion in dieser Weise:
[{Id=1066276530, Key1=1815401000238}, {Id=1059632250, Key1=1815401000244}]
Wenn ich Durchlaufen und konvertieren Sie die Werte in eine Zeichenfolge, wirft es mir den Fehler:
java.lang.Long cannot be cast to java.lang.String in Java
for (Map<String, String> map : leadIds) {
for (Map.Entry<String, String> entry : map.entrySet()) {
String applicationNumber = (String) entry.getValue();
}
}
Will ich konvertieren Sie den Wert in einen string. Gibt es irgendein Problem hier?
- Es scheint, dass Sie gezwungen die Generika in bestellen um den compiler zu zwingen denken, Sie haben eine
Map<String, String>
wenn Sie eineMap<String, Long>
. Bitte zeigen Sie die Erklärung derleadIds
.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden
String.valueOf()
statt casting:Entry<String, String>
bereitsgetValue
alsString
. Kein Betrag der das hinzufügen von beliebigentoString
Anrufe ändern. Das Problem mit den generics.Weil
String
undLong
sind völlig verschiedene Typen, die Sie nicht wirken, aber Sie können verwenden Sie statische MethodeString.valueOf(Long value)
- und rückwärtsLong.valueOf(String value)
.