java如何解决泛型实例化问题?
我正在为3个文件(如“城市id”、“国家id”、“地区id”、“名称”)制作一个CSV解析器,我面临一个通用的实例化问题。有什么办法可以解决它并坚持干燥吗?(我知道答案可能是在构造函数中取T,但我不知道如何在我的情况下正确使用它)
public static <T> List<T> csvParcer(String filePath) {
List<T> cities = new ArrayList<>();
String line;
String[] dividedLine;
try (BufferedReader reader = new BufferedReader(new FileReader(filePath))) {
reader.readLine();
while ((line = reader.readLine()) != null) {
dividedLine = line.replace("\"", "").replace(";", " ").split(" ");
cities.add(new T(dividedLine[0], dividedLine[1], dividedLine[2], dividedLine[3]));
}
return cities;
} catch (IOException ex) {
}
return null;
}
# 1 楼答案
这是我能想到的最干燥的版本,使用Java8
像这样使用