错误:类型不兼容:Opiskelija无法转换为字符串

时间:2020-01-20 11:06:17

标签: java

我有arraylist:

protected List<Opiskelija> opiskelijat = new ArrayList<>();

我想向它添加String类型。我收到如下错误:

error: incompatible types: Opiskelija cannot be converted to String
    for (String alkio : opiskelijat) {

ive试图研究但没有找到解决方法

2 个答案:

答案 0 :(得分:0)

在Opiskelija.java中添加toString()方法并在迭代时调用它:

for (Opiskelija opiskelija: opiskelijat) {
String asd = opiskelija.toString();
}

答案 1 :(得分:0)

List<Opiskelija> opiskelijat只能容纳Opiskelija类型的对象。您无法向其中添加String类型的对象。

for (String alkio : opiskelijat) { }遍历opiskelijat中的每个项目,将每个项目视为String。由于上述原因而无法执行此操作,这就是您得到错误的原因。

您可以通过opiskelijat遍历for (Opiskelija alkio : opiskelijat) { },这将使您一次处理每个Opiskelija对象。 Java中的每个对象都具有toString()方法,因为它们扩展了具有该对象的基本类型Object。您也可以在Opiskelija上调用它(就像在opiskelija.toString()中一样),但是除非您在类Opiskelija中覆盖了该方法,否则可能不是您要找的东西。

需要更多说明才能给出有用的答案。您到底想达到什么目的?