2012-04-15 10 views
0

私は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; 
    } 
} 
+0

ここでは、実装のための[7]と[8] [ここ](http://java.sun.com/developer/Books/effectivejava/Chapter3.pdf)を参照してください。等しいとハッシュコード – luketorjussen

答えて

0

あなたが探しているものがわかりません。あなたは、キー(たとえば、自分の名前)と従業員を関連付けしたい場合は、行うことができます:

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

をあなたには、いくつかの他の値に従業員をマッピングしたい場合は、行うことができます:

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

私は従業員をマップ...このようなもの..マップ employeeMap = new HashMap (); employeeMap.put(a、 "Saral"、 "Trainer"、 "34000");これを達成する方法を私に助言してください.. !!!! – Neera

+0

@ user1334074感嘆符がたくさんあるのは失礼だと思われるかもしれません。 – luketorjussen

+1

従業員e =新しい従業員( "Saral"、 "Trainer"、34000); employeeMap.put(e.getName()、e); – Attila

0

何かを(?)

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); 
+0

私はマップに従業員を保存したい...このようなもの..マップ employeeMap = new HashMap (); employeeMap.put(a、 "Saral"、 "Trainer"、 "34000");これを達成する方法を私に助言してください.. .. !!! – Neera

関連する問題