일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 안드로이드 AVD
- 프로그래밍
- Activity
- java 8
- Spring
- CSS
- Android
- 생명주기
- 아이콘
- Resources
- Intent
- 회원가입
- androidstudio
- jQuery
- 웹개발
- 글쓰기
- 안드로이드
- 주님의교회
- 청주
- Selector
- 게시판
- JavaScript
- 자바
- TinyMCE
- Java
- 제이쿼리
- #청주주님의교회
- 인텐트
- 에디터
- 영성
- Today
- Total
공부하는 블로그
배열과 ArrayList (Java Programming) 본문
배열의 정의와 특징
* 단일 값을 저장하는 용도로 사용(10, 'ㅁ', "sss", true, 1.22...)
* 처음에 길이(방의 갯수)를미리 설정하고 나중에, 변경이 불가능
ArrayList의 정의와 특징
* 객체를 저장하는 용도로 사용(new ObjectClass()...)
* 객체를 추가하면 자동으로 길이가 변경
* 객체를 삭제하면 길이가 줄어든다
* 단일 값을 저장할 수 있지만, 다양한 타입을 저장할 수도 있다
배열과 ArrayList의 공통점
* index가 자동으로 부여된다
배열과 ArrayList 비교
* 배열 선언: 데이터타입[] 배열명 = new 데이터타입[방의 갯수];
* ArrayList: ArrayList<데이터타입> 객체명 = new ArrayList<데이터타입>();
(클래스) (ArrayList) (클래스)
* 배열의 데이터를 추출하여 대입 : 데이터타입 변수명 = 배열명[index]
* ArrayList : 데이터타입 변수명 = arrayList객체명.get(index);
* 배열의 방의 갯수는 미리 설정하고, 나중에 변경 불가능!!!!
* ArrayList의 방의 갯수는 추가할 때마다 자동 증가!!!!
* ArrayList는 방의 index를 이용하여 삭제도 가능 : ArayList객체명.remove(index);
=> 방을 remove() 메서드로 삭제할 경우, 삭제하기 직전에 방의 데이터를 반환하고 삭제된다!
// ArrayList에 데이터를 추가할 경우 add()를 사용
// ArrayList에 있는 데이터를 추출할 경우 get()를 사용
// ArrayList에 있는 데이터를 삭제할 경우 remove()
// ArrayList에 있는 데이터의 갯수 size()
* 배열의 방의 갯수 : 배열명.length;
ArrayList : ArrayList객체명.size(); 또는 ArrayList객체명.length();
ArrayList 사용법
* ArrayList에 객체를 추가할 경우에는 미리 어떤 객체가 추가되는지를 알려주어야 한다
* ArrayList는 다른 패키지에 존재하기 때문에 미리 해당 클래스를 내 프로젝트로 불러들여야 한다.
1. ArrayList 클래스를 내 프로젝트로 불러 들인다.
import java.util.ArrayList;
=> 클래스 선언부 위쪽에 위치하고 package 선언부 아래쪽에 위치 (그 사이에 있어야 한다.)
2. ArrayList를 사용하기 위해서는 먼저 ArrayList 객체생성
ArrayList a = new ArrayList();
3. ArrayList에 추가될 객체의 타입 예약 (즉, ArrayList에 미리 알려준다)
public class Test{
int a = 10;
public Test(){
}
}
위의 Test 클래스를 객체로 만들어서 ArrayList에 추가할 경우,
ArrayList<Test> a = new ArrayList<Test>();
Test t1 = new Test();
a.add(t1); // a에 t1 객체를 삽입
* 위에 2줄 코드는 a.add(new Test()); 와 동일
Test 클래스에 다른 생성자가 있다고 가정해보자
public class Test{
int a = 10;
public Test(){ // 기본생성자
}
public Test(int n){ // 또 하나의 생성자
a=n;
}
}
에서
ArrayList<Test> a = new ArrayList<Test>();
a.add(new Test(110));
을 하면 기본 생성자 밑에 있는 또 하나의 생성자가 호출된다.
* set 메소드
ArrayList명.set(index, 바꿀 객체);
정리
* 한 개의 데이터를 보관하기 위해서는 변수가 사용된다
* 여러개의 데이터를 보관하기 위해서는 (단, 동일한 데이터 타입인 경우) 배열이 사용된다
* 여러개의 데이터를 보관하기 위해서는 (단, 다양한 형태) 객체로 만들어줘야 한다.
예) ObjectClass
[출처] 160331_자바 배열과 ArrayList|작성자 동쿠닝
'Develop > JAVA' 카테고리의 다른 글
자바 복습 (0) | 2018.02.19 |
---|---|
OOP의 특징(객체지향의 특징) (0) | 2018.01.25 |
Arraylist (자료구조) (0) | 2018.01.25 |
String과 String buffer의 차이점? (0) | 2018.01.24 |
Singleton Design Pattern (싱글톤 디자인 패턴, 싱글톤 패턴) (0) | 2018.01.24 |