본문 바로가기

Java/JAVA STUDY

JAVA Generic 자바 제네릭을 활용한 회원 정보 출력 프로그램

 

제네릭 

 

//객체를 저장할 때 지정한 데이터 타입만 저장할 수 있도록 설정하기 위한 기능. 

//객체의 데이터 타입을 미리 명시해줌으로써 값을 처리할 때 형변환을 하지 않아도 되게 하는 것. 

 

// List인터페이스와 ArrayList를 Member타입으로 제네릭을 선언하고

//전체 회원을 출력하는 코드를 작성하시오.

 

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
60
package chapter14;
 
//제네릭 : 객체를 저장할 때 지정한 데이터 타입만 저장할 수 있도록 설정하기 위한 기능. 
//         객체의 데이터 타입을 미리 명시해줌으로써 값을 처리할 때 형변환을 하지 않아도 되게 하는 것. 
 
// List인터페이스와 ArrayList를 Member타입으로 제네릭을 선언하고
//전체 회원을 출력하는 코드를 작성하시오
 
import java.util.ArrayList; //클래스 
import java.util.List; //인터페이스
 
 
public class MemberGeneric {
 
    public static void main(String[] args) {
        // Member 제네릭 선언
                                                          //Member 타입을 매개변수로
        List <Member>list = new ArrayList<Member>();
        
        Member mem1 = new Member();
        //홍길동, id hong, password hong1234, 나이 40
        mem1.setName("홍길동");
        mem1.setId("hong");
        mem1.setPassword("hong1234");
        mem1.setAge(40);
        
        
        list.add(mem1);
        /*add(E e) //리스트에 추가
        Appends the specified element to the end of this list (optional operation).
        목록의 끝에 지정된 요소를 추가합니다 (선택적 작업).*/
        
        Member mem2 = new Member();
        //도토리, id dotory, password tory2018, 나이 3
        mem2.setName("도토리");
        mem2.setId("dotory");
        mem2.setPassword("tory2018");
        mem2.setAge(3);
        
        list.add(mem2); //리스트에 추가
        
                                                                   //리스트 갯수
        System.out.printf("회원 수 : %d명%n%n", list.size());
        
        //모든 리스트의 요소(Member) 출력
        for(int i=0; i<list.size(); i++) {
            System.out.println("인덱스 : "+i);
            System.out.println("이름 : "+list.get(i).getName()); 
            /*Member java.util.List.get(int index)
             * Returns the element at the specified position(여기서는 Member 타입) in this list.*/
            System.out.println("아이디 : "+list.get(i).getId());
            System.out.println("비밀번호 : "+list.get(i).getPassword());
            System.out.println("나이 : "+list.get(i).getAge()+"살");
            System.out.println(" ");
            
        }
 
    }
 
}
cs

 

 

 

Member class

이름, 아이디, 비밀번호, 나이 저장

getter setter method 활용

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
package chapter14;
 
public class Member {
    private String name;
    private String id;
    private String password;
    private int age;
    
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
 
}
}
cs