Castowanie typu ze zmiennej do Apache Poi

0

Witam ;)
Mam zagwozdkę. Chciałbym aby odpowiednie dane były odpowiednio castowane.

Dobra do rzeczy. Pomysłem moim jest mapa

Map<Integer, ExcelColumn<?>> map = Map.of(
1 , new ExcelColumn<>("ID , Integer.class),
2, new ExcelColumn<>("Inna kolumna", String.class)
)

Klasa ExcelColumn
class ExcelColumn<T>{
String columnName;
Class<T> type;
}

I teraz w petli chciałbym zrobić coś takiego

cell.setCellValue((map.get(i).getType) obj)

Czy jest jakiś sposób aby to ogarnąć w taki sposób ?

0

Nie, wyznacz sobie jakiś interfejs i jakieś wrappery na wartości

interface CellValue {
    void fill(Cell cell);
}
public class IntegerCellValue implements CellValue {
    private final int value;

    public IntegerCellValue(int value) {
        this.value = value;
    }

    @Override
    public void fill(Cell cell) {
         cell.setCellValue(value);
    }
}

Wtedy możesz sobie przechowywać listę/mapę CellValue i przeiterować cellValue.fill(cell)

1 użytkowników online, w tym zalogowanych: 0, gości: 1