24/11/20(수) 자료구조
변수로만 코드를 짜면 너무 효율적이지 않다.
예를 들어 변수를 100개를 만들어야 한다면, 만들 수는 있겠지만 관리하기도 어렵고, 변수 이름 짜는 것도 어려울 것이다.
그래서 자료구조를 사용하는 것이다.
자료구조에서 가장 자주 쓰이는 것은 ArrayList, List!
🤖코드의 구조
ArrayList<> 변수 = new.ArrayList();
//<>안에는 데이터타입을 넣으면 됨
📌 ArrayList타입 변수에 .을 찍었을 때 많은 메서드(함수(ex)add())가 많이 나옴 -> 이는 오브젝트라 그렇다
ArrayList 오브젝트의 데이터 추가하기
👀예제ArrayList<String> 과일목록 = new.ArrayList(); 과일목록.add("사과"); 과일목록.add("배"); 과일목록.add("바나나");
ArrayList 오브젝트의 데이터 읽기
👀예제ArrayList<String> 과일목록 = new.ArrayList(); 과일목록.get(1); 과일목록.get(99);//없기 때문에 에러남
읽기는 안전한 환경이다. 데이터를 꺼내거나 바꾸는 건 할 수 없고 읽는 것만 가능함!
get()메서드를 사용하면 반복이 더 쉬워진다.
반복은 기존 반복과 다르게 처음부터 끝까지 보여진다. 끝값이 없다.
for(String 변수 : 위에서 설정한 변수) {
}
ArrayList 오브젝트의 데이터 수정하기
👀예제과일목록.set(1, "수박") //첫번째 목록을 수박으로 변경 과일목록.set(99, "수박") //에러! - 99번째는 없으니까
ArrayList 오브젝트의 데이터 제거
👀예제과일목록.set(1, "수박") //첫번째 목록을 수박으로 변경 과일목록.set(99, "수박") //에러! - 99번째는 없으니까
이를 CRUD라고도 부른다. (자료구조 - CRUD (create, read, update, delete))
11/21(목) List
ArrayList의 부모
방대한 양의 데이터를 하나의 리스트 안에 넣어 관리하는 형태
List안에는 ArrayList, LinkedList, Vector 3가지가 들어있어 List가 가장 큰 형태이다.
❗List 안에는 ArrayList가 들어올 수 있지만, ArrayList안에는 List가 들어올 수 없다.
//가능한 코드
List<String> MyList;
MyList = new ArrayList();
MyList = new LinkedList();
MyList = new Vector();
//불가능한 코드
ArrayList<String> MyArrayList;
MyArrayList = new ArrayList();
MyArrayList = new LinkedList();
😐 느낀점
자료구조는 중요한거라고 하셨다.
지금까지 복잡한 변수에서 자료구조 하나만으로 변경할 수 있으니까 편리할 수밖에!!!