我是Java的新手。我已经定义了以下地图:
HashMap<String, Integer> data_validation = new HashMap<String, Integer>();
data_validation.put("ACF:T_RECORDS", 66);
data_validation.put("ADF:V_RECORDS", 88);
Set set = data_validation.entrySet();
Iterator iterator = set.iterator();
while (iterator.hasNext()) {
Map.Entry mentry = (Map.Entry) iterator.next();
String file_type_name = mentry.getKey().toString().split(":")[0];
String column_name = mentry.getKey().toString().split(":")[1];
Integer records = Integer.parseInt(mentry.getValue().toString());
}
我想知道如何重构上面的代码。如何为此创建Java类?有什么建议吗?
答案 0 :(得分:0)
创建一个包含三个字段的类,而不是使用地图:
然后,将数据放入List
,填写这些字段,而不是执行此字符串解析/操作。
List<MyClass> dataValidation = new ArrayList<>();
dataValidation.add(new MyClass("ACF", "T_RECORDS", 66));
dataValidation.add(new MyClass("ADF", "V_RECORDS", 88));
MyClass
类似于:
public class MyClass {
private String fileTypeName;
private String columnName;
private int records;
public MyClass(String fileTypeName, String columnName, int records) {
this.fileTypeName = fileTypeName;
this.columnName = columnName;
this.records = records;
}
// Add getters, setters.
}