본문 바로가기

반응형

Java

(40)
Java_Arrays Arrays * 배열 복사 - copyof(), copyofRange() - copyof() : 배열 전체를 복사 - copyofRange() : 배열 일부를 복사 해서 새로운 배열을 만들어 반환 * 배열 채우기 - fill(), setAll() - fill() : 배열의 모든 요소를 지정된 값으로 채우기 - setAll() : 배열을 채우는데사용할 함수형 인터페이스를 매개변수로 받아 메서드를 호출할 때 함수형 인터페이스를 구현한 객체에 매개변수 또는 람다식으로 지정 해야함. * 배열의 정렬, 검색 - sort(), binarySearch() - sort() : 배열을 정렬 할 때 - binarySearch() : 배열에 저장된 요소를 검색할 때 * 문자열의 비교와 출력 - equals(), toStri..
Java_ PrioityQueue , Deque(Double - Ended Queue), Iterator, Listiterator, Enumeration PrioityQueue - 저장 순서에 관계 없이 우선순위가 높은 것부터 꺼낸다. - null 은 저장할 수 없다. // 오류발생 - 저장공간 = 배열공간 으로 사용 - '힙(heep)' 자료구조형으로 저장 - FIFO X Deque(Double - Ended Queue) - Queue 의 변형 - 한 쪽 끝으로만 추가 & 삭제 가능 - 구현체로는 ArrayDeque , LinkedList 등 **덱 메서드에 대응하는 메서드 Iterator & Listiterator & Enumeration - 컬렉션에 저장된 요소를 접근하는데 사용 - 인터페이스 - Iterator, Enumeration = 구버전 - Listiterator = Interator의 기능을 향상시킨 것 Iterator - 컬렉션에 저장된..
Java_Stack & Queue (스텍 & 큐) Stack ( LIFO - Last In First Out) - 마지막에 저장된 데이터를 가장 먼저 빼낸다. ** Stack 메서드 Queue ( First In First Out) - 첫 번째로 저장된 데이터를 가장 먼제 빼낸다. ** Queue 메서드 ** 예제로 설명 데이터 넣은 순서 : 1 -> 2 -> 3 -> 4 스텍 : 4 -> 3 -> 2 -> 1 큐 : 1 -> 2 -> 3 -> 4 ** 효율적인 컬렉션 클래스 - Stack : ArrayList와 같은 배열기반의 컬렉션 - Queue : 데이터를 꺼낼 때 항상 첫 번째 데이터 삭제하므로 ArrayList를 사용하게 된다면 빈공간을 채우기 위해 데이터 복사가 발생하므로 비효율적 . 그래서 LinkedList 구현사용
Java_(.txt) file 쓰기 & 읽기 (FileClass, BufferedOutputStream & BufferedWriter) FileClass - 파일 생성 및 삭제 가능 BufferedOutputStream & BufferedWriter - 읽기 속도가 빠르다. - 메모리에서 데이터로 가져오는 방식
Java_Array List, Linked List, doubly Linked List, doubly circular linked list 예제 활용은 앞 Collections ( 컬렉션 )에서 ArrayList , Vector 에 대한 설명을 하면서 다뤘으니 예제를 위한다면 https://loapin.tistory.com/30 ex) 삭제를 예제로 하겠다. 삭제를 하고자 하는 요소의 이전 요소가 삭제하고자 하는 요소의 다음 요소를 참조하도록 변경하면 된다. 하나의 참조만변경하면 삭제가 이루어지기 때문에 배열처럼 데이터를 이동하기 위해 복사하는 과정이 없기에 처리속도가 매우 빠르다. - 데이터 목록을 연결시켜 접근할 수 있는 구조 제공 - 선형 구조 - 크기를 변경할 수 X -> 새로운 배열을 생성후 데이터를 복사 - 실행속도를 향상시키기 위해서 처음 초기값을 충분한 크기 배열을 생성해야 하기때문에 메모리 남비 - 데이터 추가, 삭제 시간이..
Java_Collections ( 컬렉션 ) ( Collection Interface, List Interface, Set Interface, Map Interface, Map.Entry Interface ) Collections Framework Collections - 데이터 군(데이터 집합)을 관리,저장하는 클래스들을 표준화한 설계 프레임웍(Framework) - 다수의 데이터, [표준화된 프로그래밍 방식] , 작업환경(작업 틀) , 단일화된 구조 ex) 배열 Vector, Hashtable, Properties 컬렉션 클래스 - 다수의 데이터를 저장 할 수 있는 클래스 - 데이터 집합을 다루기 위한 클래스 [ java 컬렉션 핵심 인터페이스 3개 ] ex) Collection에 10개의 추상메서드를 주어지면 List,Set인터페이스도 갖게된다. 구현한 클래스 : 컬렉션 클래스(Vector, Hashtable, Properties) - 모든 컬렉션 클래스들은 List, Set, Map 중의 하나를 구현하..
Java_정규식(Regular Expression) - java.util.regex 패키지 Java_정규식(Regular Expression) - java.util.regex 패키지 정규식==정규표현식== Regular Expression == RegEx - 문자열 중에 어떤 패턴( pattern )과 일치하는 문자열을 찾아내기 위해 사용하는 것으로 미리 정의된 기호와 문자를 이용해서 작성한 문자열 말한다. java : java.util.regex 패키지 안에 클래스 있다. ㄱ. Matcher 클래스 - 정규식(패턴)을 데이터와 비교하는 역할 ㄴ. Pattern 클래스 - 정규식을 정의하는데 사용 - Pattern 클래스의 static메서드인 String regex 를 호출하여 Pattern 인스턴스를 얻는다. - 매개변수로 Pattern클래스의 CharSequence input을 호출해서 M..
Java_java.util.Object Class & java.util.Random Class (오브젝트 클래스 & 랜덤 클래스) java.util.Object Class - JDK 1.5 이후 ~ - 유용한 클래스 패키지 - Object클래스 보조 클래스 - 모든 메서드는 'static' java.util.Random Class - Random클래스를 사용하면 난수를 얻을수 있다 - 클래스의 내부적으로 인스턴스를 생성해서 사용하는 것 Random , Math.random() 차이 - 종자값을 설정할 수 있다. - 종자값이 같은 Random인스턴스들은 항상 같은 난수를 같은 순서대로 반환 - 생성자 Random()은 실행할 때마다 얻는 난수가 달라진다.

반응형