首页 > 解决方案 > 我可以给Java中的索引值命名吗

问题描述

假设我有一个包含员工数据的数组:

[empID, empFName, empAge, empSalary, ...]

而不是每个索引都是 [0,1,...] 我可以给索引一个标识符吗?我正在尝试创建一个循环,在该循环中我将数组对象 [ employee ] 存储在数组中,其中employee 数组的每个索引都包含empID、empFName、...以上的值之一,

我想要得到的是这样的结果:[Employee1[101, Dave, 35, 50000], Employee2[...]...]

这在Java中可能吗?

标签: javaarraysmultidimensional-array

解决方案


当然。拥抱 java 是什么,它是一个名义上的类型化系统。强调名义:事物应该有名字。因此:

@Value
public class Employee {
    int id;
    String name;
    int age;
    long salary;
}

List<Employee> employees = new ArrayList<Employee>();
employees.add(new Employee(101, "Dave", 35, 50000));

一些注意事项:

  1. 数组是你通常不应该使用的低级结构,除非你真的知道你需要它们,或者它的组件类型是原始的(int[]更难避免)。使用列表。这些可以缩小和增长,并具有 equals 和 hashCode 等的功能实现。

  2. 您需要将该类设置为具有构造函数等。如果您使用的是 java 14,则可以使用记录;或者,您可以使用 lombok 的 @Value,如本例所示。


推荐阅读