배열은 동일한 자료형의 순차적 자료 구조이다. 배열은 연속된 자료구조이다.
ArrayList: List 인터페이스를 상속받은 클래스로 크기가 가변적으로 변하는 선형리스트. 파이썬의 리스트와 비슷하다.
선언 방법
import java.util.ArrayList
public class ArrayListExam{
ArrayList list = new ArrayList(); //타입 없이 선언된다.
ArrayList<String> str = new ArrayList<String>(); // String 타입의 객체를 담는 ArrayList
ArrayList<Integer> num = new ArrayList<Integer>(); // integer 타입의 객체를 담는 ArrayList
ArrayList<Integer> num2 = new ArrayList<>(); // new에서 타입 생략 가능.
ArrayList<Integer> num3 = new ArrayList<>(10); // 초기 용량 지정 가능.
ArrayList<Integer> num4 = new ArrayList<Integer>(Arrays.asList(1,2,3)); // 미리 추가 가능.
}
값 추가, 삭제, 검색, 출력
ArrayList<Integer> num = new ArrayList<Integer>();
num.add(3); // 값 추가, 맨뒤에 삽입함.
num.add(null); //null값도 추가 가능.
num.add(1,10); // 1번 인덱스에 10 삽입
ArrayList<Member> mem = new ArrayList<Member>();
Member member1 = new Member("신짱구", 5);
mem.add(member1);
mem.add(new Member("신짱아", 1)); //객체 생성해서 바로 추가 가능.
num.remove(1); // 1번 인덱스 삭제, 그리고 빈칸은 뒤에 값들로 채워짐. 파이썬의 리스트와 같음.
num.clear(); // 모든 값 제거.
int memSize = mem.size(); // 크기를 리턴함
System.out.println(mem.get(0)); //0번째 index 출력
for(Member i : mem) { //for문을 통한 전체출력
System.out.println(i);
}
System.out.println(mem); // 배열 형태로 전체 출력
System.out.println(mem.contains(member1)); //member1이 있는지 검색 : true
System.out.println(mem.indexOf(member1)); //member1이 있는 index반환 없으면 -1
'study > java' 카테고리의 다른 글
자바/JAVA 예외 처리 (0) | 2021.01.12 |
---|---|
배열의 문자열화, ArrayList 섞기 (0) | 2021.01.11 |
자바/JAVA 예외 클래스 (0) | 2021.01.10 |
자바/JAVA 익명 객체 (0) | 2021.01.07 |
자바/JAVA 중첩 클래스, 중첩 인터페이스 (0) | 2021.01.07 |