조회 수 17315 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print

출처 : http://starcards.kr/50117963881


C#의 컬렉션 클래스이다.


1. ArrayList의 특징

  • 편하게 사용할 수 있는 배열이라 생각하면 된다.
  • 모든 데이터를 담을 수 있다.
  • 담은 데이터를 꺼내 사용할 때 형 변환을 해주어야 한다.
  • 따라서 다른 형태의 데이터를 담는다면 몇 번째에 어떤 형을 대입했는지 기억해야 한다.

2. ArrayList의 사용원칙

아래의 사용원칙을 반드시 지킬 필요는 없다. 때로는 지키지 않는 것이 더 효율적일 수 있다.

하지만 프로그램 버그의 개수를 줄이기 위하여 다음 사항은 준수하는 것이 좋다.

  • 같은 자료형을 담은 경우
    • foreach문을 사용한다.
    • Sort 명령어를 사용할 수 있다.
    • ArrayList 끼리 값 복사를 허용한다.
  • 다른 자료형을 담은 경우
    • foreach문을 사용하지 않는다.
    • Remove 함수를 사용하지 않는다.
    • 가능하면 함수간의 값 전달을 위한 매개변수 용도로 사용한다.
    • Sort 명령어를 사용하지 않는다.
    • ArrayList 끼리 값 복사를 한 경우 함수 내부에서의 Local 용도로 사용한다.

3. ArrayList에 데이터 추가

ArrayList tmpList = new ArrayList();

tmpList.Add( "국어점수" );

tmpList.Add( "80" );


4. ArrayList에서 데이터 삭제

ArrayList tmpList = new ArrayList();

tmpList.Add( "국어점수" );

tmpList.Add( 80 );

tmpList.Remove( 80 ); // 2번째 값을 제거 - 2개 이상의 80이 있을 때 처음 나오는 80을 제거한다.

tmpList.RemoveAt( 1 ); // 1번째 값을 제거


5. ArrayList에서 데이터 접근

ArrayList tmpList = new ArrayList();

tmpList.Add( "국어점수" );

tmpList.Add( 80 );

string tmpStr = (string) tmpList[ 0 ]; // 형 변환을 해준다.

int tmpInt = (int) tmpList[ 1 ];


6. ArrayList 정렬

ArrayList tmpList = new ArrayList();

tmpList.Add( 5 );

tmpList.Add( 3 );

tmpList.Add( 6 );

tmpList.Sort(); // 정렬을 수행한다.


7. ArrayList 값 복사

ArrayList tmpSource = new ArrayList();

ArrayList tmpTarget = new ArrayList();

// ... 값 대입

tmpTarget = (ArrayList) tmpSource.Clone();


8. 관련 있는 글


Dreamy의 코드 스크랩

내가 모으고 내가 보는

List of Articles
번호 분류 제목 날짜 조회 수 추천 수
120 Android Android Log (logcat) 보기 2012.06.08 29680 0
119 일반 CSS 참고 사이트 2012.06.05 17094 0
118 LINUX du 명령어 사용법(디스크 용량 확인) 1 2012.05.31 79513 0
117 Android How to create OMA DRM v1.0 content 2012.05.24 15299 0
» C# [C#] (System.Collections.Generic) ArrayList 2012.05.23 17315 0
115 C# c# 다국어 개발 2012.05.22 19839 0
114 C# Visual C# 에서 XP 테마 적용하기 2012.05.21 17056 0
113 Android [GIT 사용법] Git Log 활용하기 2012.05.08 14701 0
112 LINUX 리눅스 커널리빌딩, 버젼확인, ctags명령, vi편집기활용, 기본명령 2012.05.07 16641 0
111 LINUX [Shell Script] Shell Script 기본 2012.05.05 29693 0
110 Android Gerrit 검색 쿼리 도움말 2012.04.30 20266 0
109 LINUX vi 필수 명령어 2012.04.27 15138 0
108 Android Git 사용자 설명서 2012.04.24 17814 0
107 개념 CSFB와 SVLTE (Circuit Switched Fall-Back & Simultaneous Voice and LTE) 2012.04.23 25998 0
106 LINUX KScope 사용법 2012.04.23 16910 0
목록
Board Pagination ‹ Prev 1 ... 22 23 24 25 26 27 28 29 30 31 ... 34 Next ›
/ 34

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5