Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 制作自定义地图_Java - Fatal编程技术网

Java 制作自定义地图

Java 制作自定义地图,java,Java,我有一个名为Employee的pojo,现在我想创建一个用户定义的集合,并将其放在地图上。请告诉我如何做到这一点 public class Employee { String name,job; int salary; public Employee(String n , String j, int t) { this.name= n; this.job=j; this.salary= t; }

我有一个名为Employee的pojo,现在我想创建一个用户定义的集合,并将其放在地图上。请告诉我如何做到这一点

public class Employee {
    String name,job;
    int salary;

    public Employee(String n , String j, int t) {
        this.name= n;
        this.job=j;
        this.salary= t;          
    }

    @Override
    public int hashCode() {      
        return name.hashCode()+job.hashCode()+salary;        
    }

    @Override
    public boolean equals(Object obj) {  
        Employee e = (Employee) obj;    
        return this.name.equals(e.name) && this.job.equals(e.job)
                   && this.salary == e.salary;
    }   
}

不知道你在找什么。如果要将员工与密钥(例如,他们的姓名)关联,可以执行以下操作:

Map<String, Employee> employeeMap = new HashMap<String, Employee>();
Map employeeMap=newhashmap();
如果要将员工映射到其他值,可以执行以下操作:

Map<Employee, MyOtherType> employeeMap = new HashMap<Employee, MyOtherType>();
Map employeeMap=newhashmap();

类似于以下内容:(?)

Collection employees=newlinkedlist();
Map Map=newhashmap();
...........
//现在按如下方式填充地图:
List employeesOfTheDepartment=new LinkedList();
部门的员工。添加(员工);
map.put(employee.getDepartment(),employeesOfTheDepartment);

我想在map中存储员工…类似这样的东西..map employeeMap=new HashMap();员工地图。放置(a,“Saral”,“Trainer”,“34000”);请告诉我如何做到这一点@user1334074许多感叹号可能被视为粗鲁。请询问nicelyEmployee e=新员工(“Saral”,“Trainer”,34000);put(e.getName(),e);我想在map中存储员工…类似这样的东西..map employeeMap=new HashMap();员工地图。放置(a,“Saral”,“Trainer”,“34000”);请告诉我如何做到这一点。。!!!为了便于参考,请看一下关于实现equals和hashcode的第7项和第8项
Collection<Employee> employees = new LinkedList<Employee>();
Map<String, Collection<Employee>> map = new HashMap<String, Collection<Employee>>();

...........

//Now fill the map as following:
List<Employee> employeesOfTheDepartment = new LinkedList<Employee>();
employeesOfTheDepartment.add(employee);
map.put(employee.getDepartment(), employeesOfTheDepartment);