У меня есть класс A
с несколькими членами List
.
class A {
List<X> xList;
List<Y> yList;
List<Z> zList;
// getters and setters
}
class X {
String desc;
String xtype;
// getters and setters
}
class Y {
String name;
String ytype;
//getters and setters
}
class Z {
String description;
String ztype;
// getters and setters
}
И класс B
всего с двумя атрибутами:
class B {
String name;
String type;
}
Мне нужно повторить через различные списки в классе A
, создайте объект класса B
и добавьте в список следующим образом:
public void convertList(A a) {
List<B> b = new ArrayList<>();
if (!a.getXList().isEmpty()) {
for (final X x : a.getXList()) {
b.add(new B(x.getDesc(), x.getXType()));
}
}
if (!a.getYList().isEmpty()) {
for (final Y y : a.getYList()) {
b.add(new B(y.getName(), y.getYType()));
}
}
if (!a.getZList().isEmpty()) {
for (final Z z : a.getZList()) {
b.add(new B(z.getDescription(), z.getZType()));
}
}
}
Поскольку здесь повторяются циклы if и for.
Как могу ли я добиться этого, используя потоки Java?
Примечание: нет никакой связи между классами X
, Y
и Z
, и нет общего интерфейса.