본문 바로가기

Java/본격 Java 컬렉션

(23)
[Java] Stack 개념 stack / queue stack - 나중에 들어간 자료가 가장 먼저 나온다. queue - 입력한 순서대로 자료가 나온다. . 이런 자료형 구조를 알고 있어야 한다. . . 그 중에서 pop()과 peek() 차이를 알아야한다. pop()은 가장 최근에 들어간 자료를 출력하면서 저장되어있던 자료를 제거한다. peek()은 가장 최근에 들어간 자료를 출력하면서 저장되어있던 자료를 다시 돌려놓는다 . . import java.util.*; public class StackEx1 { public static void main(String[] args) { Stack st = new Stack(); st.push(1001); st.push(1002); st.push(1003); st.push(1004); S..
[Java] LinkedList 활용하기( + 클래스 저장 , Iterator) 학생정보를 저장할 수 있는 클래스를 만든다. . . package LinkedList_Student; public class Student { private int std_no, age; private String name; public Student(int std_no, String name, int age) { this.std_no = std_no; this.name = name; this.age = age; } public int getStd_no() { return std_no; } public void setStd_no(int std_no) { this.std_no = std_no; } public int getAge() { return age; } public void setAge(int ag..
[Java] LinkedList 활용하기 ( + peek, poll 메소드 사용) LinkedList는 ArrayList에서 중간에 데이터가 빠질 때의 단점을 보완한 것이다. . . package LinkedList; import java.util.LinkedList; public class LinkedListEx { public static void main(String[] args) { LinkedList aList = new LinkedList(); String[] alpha = {"A", "B", "C", "D", "E"}; for(String s : alpha) { aList.add(s); } System.out.println(aList); System.out.println(); // 첫번째 위치에 항목을 추가 aList.addFirst("AA"); // 마지막 위치에 항목을..
[Java] ArrayList에서 순서바꾸기( + Bubble Sort) ArrayList에 있는 메소드들을 이용하여 활용해보자. . . package ArrayList; import java.util.*; public class ArrayListEx1 { // 4번째와 5번째 숫자 바꾸기 메소드 public static void change4to5(ArrayList arrList) { int fourNum, fiveNum; System.out.println("change4to5 실행"); fourNum = arrList.get(3); fiveNum = arrList.get(4); System.out.println("4번째 숫자 : " + fourNum); System.out.println("5번째 숫자 : " + fiveNum); arrList.remove(3); arrLi..
[Java] ArrayList 사용해보기 ArrayList는 Array의 단점인 배열의 크기를 초기화해야한다는 단점을 보완하였다. ArrayList는 크기를 미리 정하지 않아도 계속해서 데이터를 쌓아갈 수 있다. . . 그러면 ArrayList를 사용해보자 . . package ArrayList; import java.util.*; public class ArrayListEx { public static void main(String[] args) { ArrayList list1 = new ArrayList(); // ArrayList 선언 list1.add(Integer.valueOf(5)); list1.add(4); list1.add(2); list1.add(0); list1.add(1); list1.add(3); System.out.pri..
[Java] Collection_desc Collection_desc 제네릭(Generic) - jdk1.5에서 추가된 문법으로 상당수의 객체에서 사용하고 있는 개념 - 제네릭을 사용하면 사용하고자 하는 자료형을 클래스에서 미리 지정하지 않고, 인스턴스 생성시 원하는 자료형을 지정할 수 있습니다. 컬렉션 프레임워크(Collection Framework) - 여러 데이터를 모아 놓은 데이터 그룹에 대한 클래스들을 프로그래밍하는 표준화된 방법 - 컬렉션(List, Set)과 맵(Map)이 속한다. - jdk1.2 이전까지는 Vector, Hashtable, Properties 등의 클래스를 이용하여 작업하였으나 jdk1.2에서부터 표준화된 컬렉션 프레임워크를 사용하게 되었습니다. - 컬렉션 프레임워크는 기본적으로 Object형 데이터를 저장하는 클..
[Java] Arrays Arrays 클래스 - 배열을 다루는 데 유용한 메소드들을 제공하는 클래스로 생성자 없이 모든 메소드가 static으로 선언되어 있습니다. - 주요 메소드 리턴 메소드명 및 설명 int binarySearch(검색대상배열[] a, 검색객체) : 검색대상 배열에서 검색객체를 검색하는 메소드로 이분법을 이용 단, 이분법의 특성상 반드시 검색대상 배열은 오름차순으로 정렬이 되어있어야 함. 복사문자열 copyOf(원본배열, int 복사할 요소 갯수) : 원본배열의 처음부터 지정한 갯수만큼 복사하여 다른 배열로 생성 복사본배열 copOfRange(원본배열, int from, int to) : 원본배열의 from부터 to - 1까지 복사하여 다른 배열로 생성 boolean equals(배열1, 배열2) : 배열1과..
[Java] Iterator<E> Iterator 인터페이스 - 컬렉션에 저장된 요소들을 읽어오는 방법의 표준화 - 인터페이스이므로 Collection의 iterator()메소드를 통해 작업합니다. - 한 방향으로만 동작하는 단점이 있습니다.(next만 가능 previous 불가능) - 주요 메소드 리턴 메소드명 및 설명 boolean hasNext() : 읽어 올 요소가 남았는지 여부 E next() : 다음 요소를 읽어들임 void remove() : next()로 읽어 온 요소를 삭제. next() 다음에 사용해야 함 Enumeration 인터페이스 - Iterator의 예전 버전 인터페이스로 예전 소스와의 호환성 문제로 남아있는 기능 - 주요 메소드 리턴 메소드명 및 설명 boolean hasMoreElements() : 읽어 올..