![](/img/trans.png)
[英]Java, easiest way to store mixed-data types in a multidimensional array?
[英]Best way to store multiple data types to one array / table in java
我有一个正在处理的小项目,试图在该项目中从庞大的.txt文件中提取数据。 这些文件包含以下内容的约100行:
Employee ID -- Salary -- Currently Employed == Employee Name == Paycheck Amounts
1 100 true == Michael == 300 200 100 300
2 200 true == Stephanie == 4000 2300 1000
从本质上讲,我需要能够在以后致电Employee ID,并显示他们的薪水,工作情况等。另一个问题是薪水可以是1薪水或50
我很好奇您对如何存储此数据有何想法? 我可以分界线,什么不是真正得到它,但是一次存储所有东西的最佳方法是什么。
理想情况下,我想打电话给ID 2并查看其Stephanie,她最近的3张工资分别是4000、2300和1000。
对于我的小型Java技能来说,这似乎是一项艰巨的任务。 任何想法/协助将不胜感激!!!
这是很标准的东西:
class EmployeeRecord {
final int employeeId;
final int salary;
final boolean isCurrentlyEmployed;
final String employeeName;
final List<Integer> paycheckAmounts = new ArrayList<>();
EmployeeRecord(
int employeeId,
int salary,
boolean isCurrentlyEmployed,
String employeeName) {
this.employeeId = employeeId;
this.salary = salary;
this.isCurrentlyEmployed = isCurrentlyEmployed;
this.employeeName = employeeName;
}
}
将它们放在一个数组中
List<EmployeeRecord> records = new ArrayList<>();
也许您可以使用地图来存储数据。
Map<String, YourEmployeeObject> records = new HashMap<>();
创建一个员工类..
class Employee{
final int employeeId;
final int salary;
final boolean isCurrentlyEmployed;
final String employeeName;
final List<Integer> paycheckAmounts = new ArrayList<>();
Employee(
int employeeId,
int salary,
boolean isCurrentlyEmployed,
String employeeName) {
this.employeeId = employeeId;
this.salary = salary;
this.isCurrentlyEmployed = isCurrentlyEmployed;
this.employeeName = employeeName;
}
}
然后创建员工对象并将所有员工添加到员工列表中
List<Employee> employees= new ArrayList<>();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.