은은하게 코드 뿌시기

자바 JAVA ArrayList 간단 예제 및 함수 본문

자바/자바 기본

자바 JAVA ArrayList 간단 예제 및 함수

은은하게미친자 2022. 6. 16. 15:52
728x90

ArrayList의 메서드

void add(int index, Object element) 지정된 위치(index)에 객체를 저장
boolean addAll(Collection c) 주어진 컬렉션의 모든 객체를 저장한다.
boolean addAll(int index, Collection c) 지정된 위치부터 주어진 컬렉션의모든 객체를 저장한다.
void clear() ArrayList를 완전히 비운다.
Object clone() ArrayList를 복제한다.
boolean contains(Object o) 지정된 객체(o)가 ArrayList에 포함되어 있는지 확인
Object get(int index) 지정된 위치(index)에 저장된 객체를 반환한다.
int indexOf(Object o) 지정된 객체가 저장된 위치를 찾아 반환한다.
boolean isEmpty() ArrayList가 비어있는지 확인한다.
int lastIndexOf(Object o) 객체(o)가 저장된 위치를 끝부터 역방향으로 검색해서 반환
Object remove(int index) 지정된 위치(index)에 있는 객체를 제거한다.
boolean remove(Object o) 지정한 객체를 제거한다(성공하면 true, 실패하면 false)
Object set(int index, Object element) 주어진 객체(element)를 지정된 위치(index)에 저장한다.
int size() ArrayList에 저장된 객체의 개수를 반환한다.
void sort(Comparator c) 지정된 정렬기준(c)으로 ArrayList를 정렬
List subList(int fromIndex, int toIndex) fromindex부터 toindex사이에 저장된 객체를 반환한다.

 

 

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package kr.co.obj;
 
import java.util.ArrayList;
import java.util.Arrays;
 
public class ArrayListTest01 {
 
    public static void main(String[] args) {
        //ArrayList
        ArrayList<String> list = new ArrayList<String>();
        
        list.add("포도");
        list.add("딸기");
        list.add("수박");
        list.add("참외");
        list.add("딸기");
        list.add("쿨쿨");
        list.add(0,"파인애플");
        
        for (String s : list) {
            System.out.println(s);
        }
        System.out.println();
        
        list.set(3"바꿈");
        list.remove(list.size()-1);
        
        
        for(int i=0; i<list.size();i++) {
            System.out.println( i + ": " + list.get(i));
        }
        System.out.println();
        
        System.out.println("딸기인덱스 : " + list.indexOf("딸기"));
        System.out.println("바꿈인덱스 : " + list.indexOf("바꿈"));
        System.out.println("라스트 딸기인덱스 : " + list.lastIndexOf("딸기"));
        
        System.out.println();
        System.out.println(list.size());
        System.out.println(list);  //[포도, 딸기, 수박, 바꿈, 딸기] 형식으로 출력.
 
    }
 
}
 
cs
 

 

파인애플
포도
딸기
수박
참외
딸기
쿨쿨

0: 파인애플
1: 포도
2: 딸기
3: 바꿈
4: 참외
5: 딸기

딸기인덱스 : 2
바꿈인덱스 : 3
라스트 딸기인덱스 : 5

6
[파인애플, 포도, 딸기, 바꿈, 참외, 딸기]

 

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
package kr.co.obj;
//계좌클래스를 이용하여 모으기
import java.util.ArrayList;
import java.util.Arrays;
 
public class ArrayListTest02 {
    
        public static void main(String[] args) {
            ArrayList<Account> list = new ArrayList<Account>();
            
            for(int i=0; i<10; i++) {
                String name  = "홍길동"+ i;
                String accNo = "123-4232-23"+i;
                int money = (int)(Math.random()*1000000);
                Account ac   = new Account(accNo, name, money);
                list.add(ac);
            }
            System.out.println("tostring으로 출력 : " + list.get(0).toString());
            
            String name  = "김김김";
            String accNo = "1111";
            int money = (int)(Math.random()*1000000);
            Account ac   = new Account(accNo, name, money);
            
            list.add(1, ac);
            
            
            System.out.println("===i를 사용한 for문 출력===============================");
            for(int i= 0; i< list.size(); i++) {
                System.out.print(i+"번째 : " + list.get(i));
                System.out.print(","  + list.get(i).getOwnerName());
                System.out.print(","  + list.get(i).getAccountNo());
                System.out.println(","  + list.get(i).getBalance());
            }
            
            System.out.println("===get0를 받아서 처리===============================");
            Account sample = (Account)list.get(0);
            System.out.println(sample.getOwnerName());
            System.out.println(sample.getAccountNo());
            System.out.println(sample.getBalance());
            
 
            
            System.out.println("===향상된 for문 출력===============================");
            int index = -1;
            for(Account a : list) {
                System.out.print(a.getOwnerName() + ", ");
                System.out.print(a.getAccountNo() + ", ");
                System.out.print(a.getBalance()+ " \n");
                if (a.getOwnerName().equals(name)) {
                    index = list.indexOf(a);
                }
            }
            System.out.println("김김김 indexof 로인덱스찾기 "+ index);
            
        }
 
}
 
cs

 

 

tostring으로 출력 : Account [accountNo=123-4232-230, ownerName=홍길동0, balance=735]
===i를 사용한 for문 출력===============================
0번째 : Account [accountNo=123-4232-230, ownerName=홍길동0, balance=735],홍길동0,123-4232-230,735
1번째 : Account [accountNo=1111, ownerName=김김김, balance=674354],김김김,1111,674354
2번째 : Account [accountNo=123-4232-231, ownerName=홍길동1, balance=972790],홍길동1,123-4232-231,972790
3번째 : Account [accountNo=123-4232-232, ownerName=홍길동2, balance=223198],홍길동2,123-4232-232,223198
4번째 : Account [accountNo=123-4232-233, ownerName=홍길동3, balance=795907],홍길동3,123-4232-233,795907
5번째 : Account [accountNo=123-4232-234, ownerName=홍길동4, balance=67236],홍길동4,123-4232-234,67236
6번째 : Account [accountNo=123-4232-235, ownerName=홍길동5, balance=821843],홍길동5,123-4232-235,821843
7번째 : Account [accountNo=123-4232-236, ownerName=홍길동6, balance=142405],홍길동6,123-4232-236,142405
8번째 : Account [accountNo=123-4232-237, ownerName=홍길동7, balance=67420],홍길동7,123-4232-237,67420
9번째 : Account [accountNo=123-4232-238, ownerName=홍길동8, balance=410889],홍길동8,123-4232-238,410889
10번째 : Account [accountNo=123-4232-239, ownerName=홍길동9, balance=546764],홍길동9,123-4232-239,546764
===get0를 받아서 처리===============================
홍길동0
123-4232-230
735
===향상된 for문 출력===============================
홍길동0, 123-4232-230, 735 
김김김, 1111, 674354 
홍길동1, 123-4232-231, 972790 
홍길동2, 123-4232-232, 223198 
홍길동3, 123-4232-233, 795907 
홍길동4, 123-4232-234, 67236 
홍길동5, 123-4232-235, 821843 
홍길동6, 123-4232-236, 142405 
홍길동7, 123-4232-237, 67420 
홍길동8, 123-4232-238, 410889 
홍길동9, 123-4232-239, 546764 
김김김 indexof 로인덱스찾기 1

 

728x90
Comments