투케이2K

237. (java/자바) list to hashset 변환 및 데이터 중복 제거 실시 본문

Java

237. (java/자바) list to hashset 변환 및 데이터 중복 제거 실시

투케이2K 2021. 9. 8. 22:14
반응형

[개발 환경 설정]

개발 툴 : Eclipse

개발 언어 : Java


[소스 코드]

package ex;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;

public class MainActivity5 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println("[Program Start]");
		System.out.println("");
		
		/* [요약 설명]
		 * 1. List Map : 배열 각 데이터를 Map 형태로 저장합니다 (ex : Json Array 에 Json Object 가 담긴 형태) 
		 * 2. HashSet : list 에 담긴 데이터 중에서 중복되는 데이터를 제거합니다 (목록 출력 시 iterator 사용)
		 * 3. 참고 : 원본 배열 타입이 List Map 이므로 해쉬셋에서 리스트로 변경 시 타입을 맞춰야합니다
		 * */
		
		// 초기 LIST MAP 형태 배열 선언 실시 및 데이터 삽입 실시
		List <Map> list = new ArrayList<>();
		for(int i=1; i<=4; i++) {
			Map map = new HashMap<>();
			if(i%2 == 0) { // 짝수로 나누어 떨어지는 경우
				map.put("idx", String.valueOf(2));
			}
			else {
				map.put("idx", String.valueOf(1));				
			}
			list.add(map); // list 에 삽입 실시
		}
		System.out.println("list 원본 : "+list.toString());
		System.out.println();
		
		
		// list to hashset 중복 제거 실시
		HashSet hashSet = new HashSet<>(list);		
		System.out.println("hashSet 중복 제거 : "+hashSet.toString());
		System.out.println();
		
		
		// hashset to list 해쉬셋을 리스트 배열로 변환 실시
		// 참고 : 원본 배열 타입이 List Map 이므로 해쉬셋에서 리스트로 변경 시 타입을 맞춰야합니다
		List <Map> copy = new ArrayList<>(hashSet);
		System.out.println("hashSet >> list : "+copy.toString());
		System.out.println("hashSet >> list : "+copy.get(0).get("idx")); // 배열 0 번지 idx key 값 출력
		System.out.println("hashSet >> list : "+copy.get(1).get("idx")); // 배열 1 번지 idx key 값 출력
		System.out.println();

	}// 메인 종료

}// 클래스 종료

[결과 출력]


[요약 설명]

/* [요약 설명]

* 1. List Map : 배열 각 데이터를 Map 형태로 저장합니다 (ex : Json Array 에 Json Object 가 담긴 형태)

* 2. HashSet : list 에 담긴 데이터 중에서 중복되는 데이터를 제거합니다 (목록 출력 시 iterator 사용)

* 3. 참고 : 원본 배열 타입이 List Map 이므로 해쉬셋에서 리스트로 변경 시 타입을 맞춰야합니다

* */


 

반응형
Comments