我有一个包含大约 300 个键/值的 HashMap ,其中一些需要进入 Java 对象。
HashMap 是来自离散字段的字符串和值的混合。该 HashMap 的示例是:
航类 HashMap :
Flight: AA123
Date: 01/01/2017
Origin: LAX
PilotSurname: SMITH
PilotFirstname: Bob
PilotBirthday: 12/12/2004
PilotGender: Male (Possible values: Male/Female/Unknown)
PilotEthnicity: South American (could be Central American/North American etc)
CoPilotSurname: JONES
CoPilotFirstname: Jane
CoPilotBirthday: 11/12/2004
CoPilotGender: Female (Possible values: Male/Female/Unknown)
PilotEthnicity: Central American (could be South American/North American etc)
Stewardess1Surname: etc.....
这需要进入一个 Java 对象,其中键和值都不总是与属性名称匹配。例如:
航类 POJO
ID: AA123
FlightDate: 01/01/2017
List<Crew>
Familyname: SMITH
FirstName: Bob
DOB: 01/01/2004
Gender: Male (could be Male/Female/Transgender)
Ethnicity: North American (possible: North or South American)
Familyname: JONES
FirstName: Jane
DOB: 01/01/2004
Gender: Female (could be Male/Female/Transgender)
Ethnicity: North American (possible: North or South American)
Familyname: etc...
如何将 Hashmap 系列的人员放入人员列表中,其中字段名称 -> 属性不匹配(姓氏与姓氏、出生日期与出生日期)以及某些离散键与有效值不匹配对于属性(男性/女性/未知与男性/女性/变性人)。
最佳答案
您似乎需要创建一个函数来处理 HashMap 并迭代所有键(解析它们的关键字),然后使用业务逻辑来确定 HashMap 中的哪些数据进入您的 Flight 对象。
这个按钮没有神奇的“简单”按钮。您需要自己编写 Java 逻辑 - 最好在自己的类中编写,这样如果业务逻辑发生变化,您只需要修改该类。
祝你好运!
关于java - HashMap 到 Java 对象的映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47999284/