처리를위한 고유 값의 맵의 특성에서 <지도>위한 방법

패키지 top.dszy.test.java8; 


가져올 수 있는 java.util을 *. ;
수입 java.util.stream.Collectors; 

공용  클래스 에서 Test1 { 

    공공  정적  무효 메인 (문자열 []에 args) { 

        목록 <의 LinkedHashMap <문자열 개체 목록 >> = 새로운 ArrayList를 <> (); 
        에는 list.add (  의 LinkedHashMap <문자열, 개체> () {{ 
            (넣어 "ID", "A"를 ), 
            (넣어 "세", "13" ), 
            (넣어 "男", "섹스" ); 
        }} ); 
        명부.의 LinkedHashMap은 <문자열, 개체> () {{ 
            (넣어 "ID", "A"를 ); 
            (넣어 "나이", "14" ); 
            (넣어 "男", "섹스" ); 
        }}); 
        에는 list.add (  의 LinkedHashMap <문자열, 개체> () {{ 
            (넣어 "ID", "B"를 ), 
            (넣어 "세", "14" ) 
            (넣어 "男", "섹스" ); 
        }} ); 
        에는 list.add (  의 LinkedHashMap <문자열, 개체> () {{ 
            (넣어 "ID", "C"를 ); 
            (넣어 "세", "14"); 
            (넣어 "男", "섹스" ); 
        }}); 
        에는 list.add (  의 LinkedHashMap은 <문자열, 개체> () {{ 
            (넣어 "", "ID를" ); 
            (넣어 "세", "14" ), 
            (넣어 "섹스", "男" ); 
        }}) ; 
        에는 list.add (  의 LinkedHashMap <문자열, 개체> () {{ 
            (넣어 "ID", "C"를 ), 
            (넣어 "세", "14" ), 
            (넣어 "섹스", "男" ); 
        }}); 


        handleRepeatPrimaryKey (목록, "ID" );
        목록 <의 LinkedHashMap <문자열, 객체 >> hasList = 새로운 ArrayList를 <> (); 
        hasList . list.stream = ()의 (X -> x.get ( "ID")를 toString (같음) ( "!"를.. 필터링 ))를 수집 (Collectors.toList ()). 
        목록 <의 LinkedHashMap <문자열, 객체 >> notHasList = 새로운 ArrayList를 <> (); 
        notHasList . - (.> x.get ( "ID") toString (같음) ( ""X. list.stream = () 필터 ))를 수집 (Collectors.toList ()). 

        에서 System.out.println (hasList); 
        에서 System.out.println (notHasList); 



    } 


    공공  정적 목록 <의 LinkedHashMap <문자열, 객체 >>목록, 문자열 ID) { 
        목록 <의 LinkedHashMap <문자열, 객체 >> itemList에 = 새로운 ArrayList를 <> ();
        위한 (의 LinkedHashMap <문자열 object> LHM리스트) {
             경우 (itemList.size () == 0 ) { 
                itemList.add (LHM); 
            } 다른 { 
                반복자 <의 LinkedHashMap <문자열, 객체 >> = listIterator의 itemList.listIterator ();
                동안 (listIterator.hasNext ()) {
                     경우 (listIterator.next (). 수 (ID)로 .toString (). 등호 (lhm.get (ID)로 .toString ())) { 
                        lhm.put (ID, ""
                    } 다른 { 
                        ListIterator.add를 (LHM); 
                    } 
                } 
            } 
        } 
        반환 목록; 
    } 
}

반복 처리의 기본 키는, 아, 나는 요구를 충족 할 수 있습니다 첫 번째 나머지 기본 키가 비어 있습니다 걸릴. 나는 더 나은 방법이 몰라?

추천

출처www.cnblogs.com/rongyao/p/11261601.html