package onj;
import java.util.HashMap;
class Person {
String
name;
Person(String
name) {
this.name =
name;
}
}
//Person2 클래스는 해시코드를 키로해서 HashMap에서 검색을 위해
//hashCode와 equals를 재정의했다.
class Person2 {
String
name;
Person2(String
name) {
this.name =
name;
}
public int
hashCode()//hashCode 오버라이딩
{
return
name.hashCode();
}
//equals() 는
객체안의 값 비교를 위한 메소드인데 hashCode() 얻기위해 내부적으로 사용
public boolean equals(Object obj) {
Person2 p2 =
(Person2)obj;
if(name.equals(p2.name)) return true;
else
return
false;
}
}
public class Test {
public static
void main(String[] args) {
Person p1 = new
Person("오엔제이");
Person p2 = new
Person("오라클자바커뮤니티");
HashMap<Person, String> map1 = new
HashMap<Person, String>();
map1.put(p1,
"실무교육");
map1.put(p2,
"개발자커뮤니티");
//출력결과 null이 나옴,
값을 못가져옴,Key로 사용되는 Person 클래스에
//hashCode()메소드가
오버라이딩 안되있어서
String what1 =
map1.get(new Person("오엔제이"));
System.out.println("map1.get(오엔제이)-->" + what1
);
Person2 p3 = new
Person2("오엔제이");
Person2 p4 = new
Person2("오라클자바커뮤니티");
HashMap<Person2, String> map2 = new
HashMap<Person2, String>();
map2.put(p3,
"실무교육");
map2.put(p4,
"개발자커뮤니티");
//출력결과 이름이
"오엔제이"인 것을 map2에서 찾아옴
String what2 =
map2.get(new Person2("오엔제이"));
System.out.println("map2.get(오엔제이)-->" + what2
);
}
}
[오프라인 개강예정강좌, 오프라인교육장에 오시면 보다 자세히 배울 수 있습니다.]
오라클자바커뮤니티에서 운영하는 개발자 전문교육 ,개인80%환급(www.onjprogramming.co.kr)
[주간]
[12/09]iPhone 하이브리드 앱 개발 실무과정
[12/09][기업100%환급]Spring Framework,MyBatis,Hibernate실무프로젝트과 정
[12/16][기업100%환급]PL/SQL,ORACLE HINT,TUNING
[12/16]웹퍼블리싱 마스터
[12/16]안드로이드개발자과정
[12/23][기업100%환급]자바기초에서 JDBC, Servlet/JSP까지
[01/06][기업100%환급]SQL기초에서 Schema Object까지
[평일야간]
[12/05]자바초보에서안드로이드까지
[12/09]C#,ASP.NET마스터
[12/09]iPhone하이브리드앱개발실무과정
[12/09]JAVA&WEB프레임워크실무과정
[12/10]Spring3.X, MyBatis, Hibernate실무과정
[12/10]SQL초보에서실전전문가까지
[12/17]웹퍼블리싱 마스터
[주말]
[12/14]Spring3.X,MyBatis,Hibernate실무과정
[12/14]SQL초보에서전문가까지
[12/14]웹퍼블리싱 마스터
[12/21]자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
[12/21]자바초보에서안드로이드까지
[12/28]C#,ASP.NET마스터
오라클자바커뮤니티에서 운영하는 개발자 전문교육 ,개인80%환급(www.onjprogramming.co.kr)
[주간]
[12/09]iPhone 하이브리드 앱 개발 실무과정
[12/09][기업100%환급]Spring Framework,MyBatis,Hibernate실무프로젝트과 정
[12/16][기업100%환급]PL/SQL,ORACLE HINT,TUNING
[12/16]웹퍼블리싱 마스터
[12/16]안드로이드개발자과정
[12/23][기업100%환급]자바기초에서 JDBC, Servlet/JSP까지
[01/06][기업100%환급]SQL기초에서 Schema Object까지
[평일야간]
[12/05]자바초보에서안드로이드까지
[12/09]C#,ASP.NET마스터
[12/09]iPhone하이브리드앱개발실무과정
[12/09]JAVA&WEB프레임워크실무과정
[12/10]Spring3.X, MyBatis, Hibernate실무과정
[12/10]SQL초보에서실전전문가까지
[12/17]웹퍼블리싱 마스터
[주말]
[12/14]Spring3.X,MyBatis,Hibernate실무과정
[12/14]SQL초보에서전문가까지
[12/14]웹퍼블리싱 마스터
[12/21]자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
[12/21]자바초보에서안드로이드까지
[12/28]C#,ASP.NET마스터
댓글 없음:
댓글 쓰기