我有以下课程

class SomeClass{

    private String id;
    private String name;
    private List<SomeClass> history;

}


class SomeClassDto{

    private String name;
    private List<SomeClassDto> historyDto;
}


现在,我想要一个方法将此SomeClass对象转换为SomeClassDto。

最佳答案

您可以在SomeClassDTO中创建一个构造函数,该构造函数将SomeClass作为参数,然后进行转换:

class SomeClassDto{

    private String name;
    private List<SomeClassDto> historyDto;

    public SomeClassDto(SomeClass someClass){
        this.name = someClass.getName();
        this.historyDto = new ArrayList<>();
        for(SomeClass sc: someClass.getHistory()){
            this.historyDto.add(new SomeClassDto(sc));
        }
    }
}

10-04 12:50