Fairy ' s

[JAVA] ArrayList ? 본문

Study/JAVA

[JAVA] ArrayList ?

berafairy 2023. 1. 10. 13:34

 

// 참고


 

ArrayList

  • ArrayList는 List 인터페이스를 상속받은 여러 클래스들 중 하나이다.
  • 여러 데이터를 순서대로 관리할 때 사용
  • 일반 배열과 다른 점은 크기가 가변적으로 변한다는 것이다.
  • 일반 배열은 선언할 때 int[] nums = new int[5]; 이런 식으로 선언하기 때문에 크기를 바꿀 수 없다.

 

  • ArrayList 사용 / 메서드 종류
// String 타입의 ArrayList 생성하여 names 라는 지역 변수에 담음
List<String> names = new ArrayList<>();

// ArrayList에 인덱스 값 추가, 인덱스 추가는 add를 사용
names.add("AAA");
names.add("BBB");
names.add("CCC");

// ArrayList의 배열 크기는 size를 사용
int size = names.size();

// 인덱스에 저장된 내용 참조
String name1 = names.get(0);
String name2 = names.get(1);
String name3 = names.get(2);

// 인덱스 값 수정
String prevName = names.set(0, "DDD");

// 인덱스 삭제
names.remove(0);
names.remove("BBB");

// 참조 값을 활용한 삭제
Integer value = 20;
nums.remove(value);
nums.remove(new Integer(20));

// 모든 인덱스 삭제
names.clear();

 

 


예제 1

package test;

import java.util.ArrayList;
import java.util.List;

import test.mypac.Member;


public class maptest {
	public static void main(String[] args) {
		List<Member> members=new ArrayList<>();
		Member mem1=new Member();
        
		mem1.num=1;
		mem1.name="김구라";
		mem1.addr="노량진";
		
		Member mem2=new Member();
		mem2.num=2;
		mem2.name="해골";
		mem2.addr="행신동";
        
		members.add(mem1);
		members.add(mem2);
		   
		for(int i=0; i<members.size(); i++) {
			Member tmp=members.get(i);
		    String line="번호=>"+tmp.num+", 이름=>"+tmp.name+", 주소=>"+tmp.addr;
		    System.out.println(line);
		}
		     
		for(Member tmp:members) {
			String line="번호=>"+tmp.num+", 이름=>"+tmp.name+", 주소=>"+tmp.addr;
		    System.out.println(line);
		}
	}
}
  • Member 타입을 저장할 수 있는 ArrayList 객체의 member 지역변수에 값을 담는다.
  • Member 객체를 생성해서 mem1이라는 지역변수에 값을 담는다.
  • mem1과 mem2에 회원의 정보를 담고, members.add(); 를 이용해서 생성된 배열(ArrayList)에 저장

 

List<Member> a=members;
Member b=members.get(0);
		
int c=members.get(0).num;	
String d=members.get(0).name;
String e=members.get(0).addr;
  • List<Member> 에서 Member 타입으로 생성한 ArrayList 객체의 a 지역변수에 members 배열에 담은 데이터를 담는다.
  • Member 객체의 b 지역변수에 members 배열의 0번째 인덱스의 데이터를 담는다.
  • 타입 별로 선언한 c, d, e에 members의 0번째 인덱스에 담았던 num, name, addr 정보를 담는다.

 

'Study > JAVA' 카테고리의 다른 글

[JAVA] Exception / try ~ catch  (0) 2023.01.11
[JAVA] Wrapper Class ?  (0) 2023.01.11
[JAVA] Generics Class ?  (0) 2023.01.10
[JAVA] HashMap / HashSet?  (0) 2023.01.10
[JFrame] JFrame 이란? / 기초 예제 구현  (0) 2023.01.09
Comments