Notice
Recent Posts
Recent Comments
Link
투케이2K
302. (java/자바) [유틸 파일] callHashMapKeyValue : 해쉬맵 key , value 값 조회 콜백 (callback) 메소드 본문
Java
302. (java/자바) [유틸 파일] callHashMapKeyValue : 해쉬맵 key , value 값 조회 콜백 (callback) 메소드
투케이2K 2023. 1. 6. 18:11[개발 환경 설정]
개발 툴 : Eclipse
개발 언어 : Java
[소스 코드]
// TODO [SEARCH FAST] : [CallBack] callHashMapKeyValue : 해쉬맵 key , value 값 조회 콜백
static class callHashMapKeyValue {
/**
* // -----------------------------------------
* [callHashMapKeyValue 클래스 설명]
* // -----------------------------------------
* 1. 해쉬맵 key , value 값 조회 콜백 반환
* // -----------------------------------------
* 2. 호출 방식 :
*
* HashMap map = new HashMap();
* map.put("name", "twok");
* map.put("age", 29);
*
* new C_Util.callHashMapKeyValue().setCallBack(new C_Util.callHashMapKeyValue.CallBack() {
* @Override
* public void onMessage(String key, String value) {
* // TODO Auto-generated method stub
* System.out.println("key = " + key + " / " + "value = " + value);
* }
* }, map);
*
* // -----------------------------------------
* 3. 리턴 데이터 : key , value
* // -----------------------------------------
* */
// [내부 인터페이스 정의 실시]
interface CallBack {
public void onMessage(String key, String value);
}
// [전역 변수 선언 실시]
CallBack callback;
// [클래스 생성자 초기화 실시]
public callHashMapKeyValue() {
this.callback = null; // [초기화]
}
// [콜백 지정 메소드 정의 실시]
public void setCallBack(CallBack callback, HashMap map) {
this.callback = callback; // [매핑]
// [로직 처리 실시 >> excute 호출]
try {
if (map != null && map.isEmpty() == false && map.size()>0 && map.keySet().size()>0){
Set set = map.keySet();
Iterator iterator = set.iterator();
while(iterator.hasNext()){
String key = (String) iterator.next();
// [excute 반환]
this.excute(key, String.valueOf(map.get(key)));
}
}
else {
// [excute 반환]
this.excute("ERROR", "ERROR");
}
}
catch (Exception e){
e.printStackTrace();
}
}
// [콜백 실행 메소드 정의 실시]
public void excute(String key, String value) {
// [인풋으로 들어온 데이터를 그대로 CallBack 인터페이스 onMessage 메소드로 전달]
this.callback.onMessage(key, value);
}
}
반응형
'Java' 카테고리의 다른 글
Comments