컬렉션은 객체만 저장 가능
**제네릭
List<Student> studentList = new ArrayList<Student>();
Set<String> set = new HashSet<String>();
장점
1. 저장하는 크기의 제약이 없다.
2. 추가, 삭제, 정렬 등의 기능 처리가 간단하게 해결된다
3. 여러 타입의 데이터가 저장 가능하다
int num1 = Integer.parseInt("100");
double num2 = Double.parseDouble("1.2345");
List<Student> studentList = new ArrayList<Student>();
List.add(Object e) : 리스트에 객체를 추가
List.get(index i) : 리스트에서 i번째 인덱스에 있는 객체 반환
int List.size() : 리스트에 저장된 데이터 개수를 얻는 방법
boolean List.isEmpty() : 비어있으면 true 반환
향상된 for문
for(컬렉션 or 배열에서 꺼낸 한개의 요소를 저장할 변수 : 컬렉션명 or 배열명)
for(Student std : studentList){
System.out.println(std);
List.set(int index, Student e) : List의 index 요소를 전달받은 e로 변경, 이때 index번째에 있던 기존 값이 반환
** char gender = sc.next().charAt(0);
List.remove(int index) : 리스트에서 Index번째 요소를 제거, 이때 제거된 요소가 반환
String.toUpperCase() : 문자열을 대문자로 변경
String.toLowerCase() : 문자열을 소문자로 변경
boolean String.contains(문자열) : String에 문자열이 포함되어 있으면 true
equals() , hashCode() 오버라이딩 필수 !!!
Set.add(String e) : 추가
Set.size() : 저장된 데이터의 개수 반환
Set.remove(String e) : Set에 저장된 객체 중 매개변수 e와 필드가 같은 객체를 제거
hashCode() : 필드 값이 다르면 중복되지 않는 숫자를 만드는 메서드
컬렉션에 제공하는 컬렉션 객체 반복 접근자
== 컬렉션에 저장된 데이터를 임의로 하나씩 반복적으로 꺼내는 역할
Iterator<String> it = set.iterator();
set.iterator() : Set을 Iterator. 저장된 객체를 한번씩 가져오는 반복자 리턴
it.hasNext() : 다음 값이 있으면 true 반환
it.next() : 다음 값(객체)를 얻어옴
HashSet과 거의 동일하지만, Set에 추가되는 순서를 유지함, 중복 제거
자동 정렬 Set (오름차순!!), 중복 제거
Key : Value --> 키와 값은 모두 객체
Map<Integer, String> map = new HashMap<Integer, String>();
Map.put(Integer Ket, String Value) : 추가
Key 중복 시 허용 X 대신, Value값을 덮어씀
Value 중복은 허용, (동명이인)
map.put(Key,Value) : 추가
map.keySet()
map.entrySet()