【发布时间】:2021-02-17 18:41:09
【问题描述】:
我正在处理一个问题,其中我有一个需要转换为对象的 txt 文件。我的文件格式是:
阿拉巴马州::蒙哥马利::205764::155.4
州名和首都将作为
这是我目前的主要方法:
public static void main(String[] args) throws Exception {
Scanner fileReader = new Scanner(new BufferedReader(new FileReader("MoreStateCapitals.txt")));
Map<String, Object> stateCapitals = new HashMap<>();
while (fileReader.hasNextLine()) {
String[] columns = fileReader.nextLine().split("::");
stateCapitals.put(columns[0], columns[1]);
}
Set<String> states = stateCapitals.keySet();
Collection<Object> capitals = stateCapitals.values();
}
这是我的 Capital 类,带有 getter、setter 和 Constructor
private String name;
private int population;
private double squareMileage;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getPopulation() {
return population;
}
public void setPopulation(int population){
this.population = population;
}
public double getSquareMileage() {
return squareMileage;
}
public void setSquareMileage(double squareMileage){
this.squareMileage = squareMileage;
}
public Capital(String name, int population, double squareMileage) {
this.name = name;
this.population = population;
this.squareMileage = squareMileage;
}
}
编辑:txt文件中的第一个值唯一用于hashmap中的键,它不参与对象的创建
【问题讨论】:
-
你的
Capital对象有一个构造函数,你应该在循环中为每一行调用它。您是编写代码还是只是从某个地方下载它?如果你真的写了它,我不确定问题是什么。如果您没有编写代码,那么您的问题在这里是题外话。 StackOverflow 不是论坛、教程或代码编写服务。
标签: java object constructor hashmap unmarshalling