이번 시간에는 List라는 것을 사용할 것이다.
List는 배열과 비슷하지만 조금 다르기도 하다.
1. List 생성
// List<타입> 변수 = new ArrayList<>();
List<String> list = new ArrayList<String>();
위처럼 선언하면 된다.
2. List에 추가하기
List라는 녀석은 여러 가지 Method를 들고 있다. 그중에 추가하는 Method를 사용해 보자
// 변수.add(같은 타입의 값);
list.add("Hello World");
이렇게 add() Method를 사용하면 된다.
주의할 점은 add() 안에 들어가는 녀석이 무슨 타입인지 반드시 인지하면서 들어가자
List<여기안에 있는녀석> 을 add(같은 타입) 으로 넣어주면 된다.
3. 출력하기
여러 가지 방법으로 뽑아 볼 수 있다.
3-1. 번지수를 찾아서 출력하기
// list.get(번지수)
System.out.println(list.get(0));
위에 하나를 추가하였으면 0번지에 반드시 하나가 들어가 있을 것이다. ( 모든지 0부터 시작함 )
그렇기 때문에 list.get() 를 사용하면 list안에 있는 해당하는 번지수를 찾아 겟또 하면 된다
3-1. For문을 이용하기
3-1-1. 일반 For문
for (int i = 0; i < list.size(); i++) {
// list.get(번지수)
System.out.println(list.get(i));
}
이런 식으로 하면 list의 개수만큼 for문이 돌아간다.
그다음은 list.get(번지수) 로 찾아 순서대로 출력해 준다.
3-1-2. 확장 For문
// for (타입 변수 : list의 변수)
for (String item : list) {
// item 은 list.get() 의 순서대로 출력
System.out.println(item);
}
위와 같이 해주면 된다. 조금 헷갈릴 수도 있는 for문인데, 실무에서는 3-1-1보다 이 for문을 더 많이 사용한다.
에러도 덜 나기 때문이다. 꼭 익혀주면 좋다
4. 객체와 List
실무에서는 객체를 굉장히 많이 쓴다. 그렇기 때문에 여기서도 한번 써보도록 하자
일단 위에다가 아무 객체를 생성한다. ( 남자를 생성함 )
class Man {
// 이름
private String name;
// 나이
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
4-1. Man의 List 생성
그다음은 다시 타입을 바꿔 리스트를 생성해 보자
// List<타입> list = new ArrayList<생략가능>();
List<Man> list = new ArrayList<>();
이렇게 Man의 List를 생성할 수 있다.
4-2. 이해하기
남자 고등학교의 하나의 반이 있다.
Man은 남자 한 명을 뜻한다.
List는 여러 Man들이 모인 반을 뜻한다.
그럼 0번 남자는 이름 (name) 나이 (age) 가 있을 것이고,
1번 남자도 이름 (name) 나이 (age) 가 있을 것이다.
그렇게 생각하면 쉽다고 생각한다.
4. 에 나온 List<Man>은 반을 생성한 것이다.
4-3. 객체 생성
이제 남학생을 만들어 보자
Man man = new Man();
man.setAge(0);
man.setName("강코딩");
남학생을 만들었다. 혹시 객체를 모른다면 #Java 14화) 를 보고 오도록 한다.
그리고 반안에 남학생을 들여보내 보자.
4-4. List 추가
list.add(man);
이렇게 add() 를 하면 남학생이 반안에 들어간 거라고 보면 된다.
4-5. 출력하기
// list.get(몇번남학생).getAge(); <- xx번 남학생의 나이
System.out.println(list.get(0).getAge());
// list.get(몇번남학생).getName(); <- xx번 남학생의 이름
System.out.println(list.get(0).getName());
이렇게 출력도 가능하다.
나머지는 for문으로 한번 연습 해보길 바란다. 이상
'Programming > Java' 카테고리의 다른 글
#Java 14화) 객체 ( Object ) 쉽게 이해하기 (5) | 2021.10.09 |
---|---|
#Java 13화) While문 (반복문) 사용하기 (0) | 2021.10.03 |
#Java 12화) for문(반복문) 사용법 (0) | 2021.10.02 |
#Java 11화) IF문, ELSE 문(조건문)사용법 (0) | 2021.09.29 |
#Java 10화) 메소드 사용법 (Function) (0) | 2021.09.04 |