Java中的列表迭代
我有一个包含以下几个类的文件:Java中的列表迭代,java,Java,我有一个包含以下几个类的文件: @Getter @Setter public class GlobalDto { List<SomeClass> someClass; } @Getter @Setter class SomeClass implements Serializable { String lastName; String firstName; } @Getter@Setter 公共类GlobalDto{ 列出某个类; } @Getter@Set
@Getter @Setter
public class GlobalDto {
List<SomeClass> someClass;
}
@Getter @Setter
class SomeClass implements Serializable {
String lastName;
String firstName;
}
@Getter@Setter
公共类GlobalDto{
列出某个类;
}
@Getter@Setter
类SomeClass实现可序列化{
字符串lastName;
字符串名;
}
我如何迭代这个列表someClass代码>在一个for each循环中
我试过这个:
List<GlobalDto> list;
for(GlobalDto item : list) {
List<SomeClass > it = item.getSomeClass().get(0);
}
列表;
对于(全局待办事项:列表){
列出它=item.getSomeClass().get(0);
}
然而,我的IntelliJ抛出了一个不兼容的类型错误,并希望从多个类型转换中得到帮助。因此,如何从我的GlobalDto
中获得lastName
来自SomeClass
?问题是:你说它是列表,但是项。getSomeClass()。get0
返回SomeClass
对象,这就是为什么it
和您正在调用的方法的返回值是不兼容的类型
如果您的列表是列表代码>那么你的循环应该可以工作(至少基于你展示的内容)。若并没有,那个么不兼容类型
应该为您提供更多关于编译器看到和抱怨的问题性质的详细信息。使用选项包含实际的错误消息和错误。请查看此选项
List<GlobalDto> list;
for(GlobalDto item : list) {
List<SomeClass> it = item.getSomeClass().get(0);
// it = List, items.getSomeClass() returns List, but items.getSomeClass().get(0) returns SomeClass object
}
List<GlobalDto> list;
for(GlobalDto item : list) {
List<SomeClass> it = item.getSomeClass(); // get the list
for(SomeClass some : it) {
// do whatever
}
}