VB :: Lecture & TIPs

[VB.NET] 읽어들인 정보에서 배열에 동일한 항목의 값은 제외하고, 다른 항목의 값들만 저장하기

말이 좀 어려운가요? ㅎㅎ

말 그대로 데이터를 쭈욱 읽는데 중복되는 데이터는 빼고 다른 것만 저장하는 방법입니다.

뭐 다들 이중 루프 쓰면 쉽게 할 수도 있지만 좀 더 레벨을 올려보고자 글 올립니다.
( SQL 쿼리 구문에서 distinct 와 비슷한 역할을 하는 기능을 만드는 겁니다. )

 

Dim AddMenuList As New List(Of String) ' 데이터를 저장할 Menu 배열입니다.

For Each tmpItem As String In MenuList ' MenuList 는 항목이 중복으로 들어가 있는 문자열 배열입니다. 이걸 For Each 로 Loop 돌면서 읽습니다.

    If Not AddMenuList.Exists(Function(value As String)

                              Return value = tmpItem

                          End Function) Then

        AddMenuList.Add(tmpItem)

    End If

Next

 

간단하면서 어렵죠?

MenuList 라는 중복되는 문자 배열을 For Each 로 루프 돌면서 각각의 항목들을 tmpItem 문자열에 넣습니다.

한 개씩 읽어들인 값을 List 객체의 Exists 메서드를 이용해서 존재 여부를 확인하고,

해당 값이 List 객체 내부에 존재하지 않는 경우, List 객체에 추가하는 기법입니다.

다른 코딩보다 간단해서 참고하시라고 알려드립니다.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: