使用Java 8和流处理数据csv

我正在学习Java 8,我正在尝试在Java中处理一个csv文件;

List<Catalogo> catalogos = new ArrayList<>();
    try (Stream<String> lines = Files.lines(Paths.get("src\\main\\resources\\productos.csv"), Charset.forName("Cp1252"))) {
        List<String[]> data = lines.map(s -> s.split(","))
                .collect(Collectors.toList());
        createCatalog(catalogos, data);
        catalogos.forEach(System.out::println);
    } catch (IOException e) {
        e.printStackTrace();
    }
}

public static void createCatalog(List<Catalogo> catalogos, List<String[]> data) {
    for (String[] x : data) {
        for (int i = 0; i < x.length; i++) {
            Catalogo catalogo = new Catalogo();
            catalogo.setCodigo(x[0]);
            catalogo.setProducto(x[1]);
            catalogo.setTipo(x[2]);
            catalogo.setPrecio(x[3]);
            catalogo.setInventario(x[4]);
            catalogos.add(catalogo);
        }
    }
}

我想知道是否可以改进此代码,但我不喜欢这样做。