我的 Java 应用程序显示一些奇怪的行为,我无法找到解决方案。
此代码片段获取LinkedHashMap
键和值均为类型的 a 的内容,String
并将它们写入文本文件。configWriter
是类型PrintWriter
。
for (Map.Entry<String, String> entry : configMap.entireSet()) {
configWriter.println(entry.getKey() + "=" + entry.getValue());
}
地图被宣布为:
LinkedHashMap<String, String> configMap = new LinkedHashMap<String, String>();
它是通过使用Scanner
该类从文本文件中读取标记来填充的。
映射中的一个值是 aString
只包含数字(一个整数),但是当循环到达这个值时,它会抛出一个ClassCastException
说法,即不能从Integer
to 转换String
。这很有意义,但值的类型是字符串。
有没有办法强制 Java 将此值保留为String
?