将java映射转换为ArrayList时出错
我已经成功地创建了一个Java映射并在那里添加了值。当我将其作为entrySet进行迭代时,我得到了与以下类似的输出:将java映射转换为ArrayList时出错,java,Java,我已经成功地创建了一个Java映射并在那里添加了值。当我将其作为entrySet进行迭代时,我得到了与以下类似的输出: key One=1 Key Two=2 现在,我不想打印,而是想使用以下命令写入文件: java.nio.file.Files.write(path, lines, options) 现在使用第二个参数am将其设置为: new ArrayList(mapResult.entrySet()) 但当我运行它时,我得到以下错误: Exception in thread "mai
key One=1
Key Two=2
现在,我不想打印,而是想使用以下命令写入文件:
java.nio.file.Files.write(path, lines, options)
现在使用第二个参数am将其设置为:
new ArrayList(mapResult.entrySet())
但当我运行它时,我得到以下错误:
Exception in thread "main" java.lang.ClassCastException: java.util.TreeMap$Entry cannot be cast to java.lang.CharSequence
您必须手动转换条目集;Java不会为您这样做 下面是一个示例,说明了如何做到这一点:
List<String> values = new ArrayList<>();
for(Map.Entry<Integer, String> entry : foo.entrySet()) {
values.add(entry.getKey() + "=" + entry.getValue());
}
List values=new ArrayList();
for(Map.Entry:foo.entrySet()){
add(entry.getKey()+“=”+entry.getValue());
}
由于集合中包含的参数现在可以转换为
CharSequence
,Files.write()
将能够写入特定文件,而无需ClassCastException
,您必须手动转换条目集;Java不会为您这样做
下面是一个示例,说明了如何做到这一点:
List<String> values = new ArrayList<>();
for(Map.Entry<Integer, String> entry : foo.entrySet()) {
values.add(entry.getKey() + "=" + entry.getValue());
}
List values=new ArrayList();
for(Map.Entry:foo.entrySet()){
add(entry.getKey()+“=”+entry.getValue());
}
由于集合中包含的参数现在可以转换为
CharSequence
,Files.write()
将能够写入特定文件,而无需ClassCastException
,您必须手动转换条目集;Java不会为您这样做
下面是一个示例,说明了如何做到这一点:
List<String> values = new ArrayList<>();
for(Map.Entry<Integer, String> entry : foo.entrySet()) {
values.add(entry.getKey() + "=" + entry.getValue());
}
List values=new ArrayList();
for(Map.Entry:foo.entrySet()){
add(entry.getKey()+“=”+entry.getValue());
}
由于集合中包含的参数现在可以转换为
CharSequence
,Files.write()
将能够写入特定文件,而无需ClassCastException
,您必须手动转换条目集;Java不会为您这样做
下面是一个示例,说明了如何做到这一点:
List<String> values = new ArrayList<>();
for(Map.Entry<Integer, String> entry : foo.entrySet()) {
values.add(entry.getKey() + "=" + entry.getValue());
}
List values=new ArrayList();
for(Map.Entry:foo.entrySet()){
add(entry.getKey()+“=”+entry.getValue());
}
由于集合中包含的参数现在可以转换为
CharSequence
,Files.write()
将能够写入特定文件,而无需使用ClassCastException
Try keySet()而不是entrySet()。前者生成键的集合,而后者生成entries的集合为什么要创建非泛型的ArrayList
而不是ArrayList
?丹麦有些东西坏了。我知道,我需要键和值。你必须将条目
对象转换成字符串。@DavidConrad在哪里以及如何转换?请尝试keySet()而不是entrySet()。前者生成键的集合,而后者生成entries的集合为什么要创建非泛型的ArrayList
而不是ArrayList
?丹麦有些东西坏了。我知道,我需要键和值。你必须将条目
对象转换成字符串。@DavidConrad在哪里以及如何转换?请尝试keySet()而不是entrySet()。前者生成键的集合,而后者生成entries的集合为什么要创建非泛型的ArrayList
而不是ArrayList
?丹麦有些东西坏了。我知道,我需要键和值。你必须将条目
对象转换成字符串。@DavidConrad在哪里以及如何转换?请尝试keySet()而不是entrySet()。前者生成键的集合,而后者生成entries的集合为什么要创建非泛型的ArrayList
而不是ArrayList
?丹麦有些东西坏了。我知道,我需要键和值。你必须将条目
对象转换成字符串。@DavidConrad在哪里以及如何进行转换?