목록JAVA (15)
100세까지 코딩

컬렉션이란? 객체들의 집합, 즉 데이터 저장소이다. 컬렉션은 가변 개수의 객체들을 저장할 수 있는 공간이며 추가, 삭제 및 검색 기능을 제공한다. 다양한 타입을 지원하기 위해 제네릭 형태로 구현되어 있다. 컬렉션의 종류는? Vector와 ArrayList : 가변 크기 배열 LinkedList : 링크드 리스트 HashSet : 집합 HashMap : 키와 값의 쌍 Stack, Queue 등 반복자 Map을 제외한 Vector, ArrayList, HashSet, LinkedList, Queue는 Collection 인터페이스를 구현한 클래스이다. Collection 인터페이스를 구현한 클래스는 순차적 검색을 할 때 Iterator 인터페이스를 사용하면 편리하다. Collection 인터페이스에는 Ite..

제네릭(generic)이란? 데이터의 타입을 일반화(generalize)하는 것을 의미한다. 클래스나 메소드에서 사용할 내부 데이터 타입을 외부에서 사용자에 의해 미리 지정한다. 장점 1. 잘못된 타입이 들어오는 것을 컴파일 단계에서 방지할 수 있다. 2. 사용자가 타입을 미리 지정하기 때문에 타입을 체크하고 변환해 줄 필요가 없다 = 관리 편리. 3. 코드의 재사용성이 높아진다. Ex 제네릭 클래스를 사용하지 않으면? public class IntStack{ final int size; int[] items; int top; public void Push(int item) {} public int Pop(){} } public class FloatStack{ final int size; float[] ..

String 클래스는 문자열에 대해 검색, 교체, 합체 등의 메서드를 제공한다. 대표적인 메서드를 알아보자. 1) String.concat(String str) public class Main { public static void main(String[] args) { String str = "hi"; System.out.println(str.concat(" java")); } } 결과 : 두 개의 문자열을 합쳐서 반환한다. 2) String.replace(String target, String replacement) public class Main { public static void main(String[] args) { String str = "1234512345"; System.out.printl..

java.util.Arrays Arrays 클래스는 배열에 대해 정렬, 검색, 비교 등의 메서드를 제공한다. 대표적인 메서드를 알아보자. 1) Arrays.Sort(arr) import java.util.*; public class Main { public static void main(String[] args) { int [] arr = {1,2,3,4,7,9,6,5,8,10}; Arrays.sort(arr); for(int i = 0; i < arr.length; i++) { System.out.print(arr[i]+" "); } } } 결과 : 가장 많이 쓰인다해도 과언이 아니다. arr 배열을 오름차순으로 정리해 주는 기능이다. 1-1) Arrays.Sort(arr,Collections.reve..
한눈에 정리 함수 설명 Integer.parseXXX() 기본 타입인 int 타입을 반환. Integer.valueOf() Integer 래퍼 객체를 반환. toString() 대상이 null이면 Null PointException(NPE)를 발생. String.valueOf() 대상이 null이면 문자열 "null"을 만들어서 반환. 1) 기본 타입 vs 참조 타입 기본 타입은 byte, char, boolean, int, long 등 데이터의 실제 값이 저장되는 것들이다. 참조 타입은 String이나 객체 등 데이터가 저장된 위치 주소 값이 저장되는 것들이다. 2) Wrapper 클래스 기본 자료타입을 객체로 변환하기 위해서 사용하는 것이 래퍼 클래스이다. 모든 기본 타입은 래퍼 클래스로 변환할 수 ..
한눈에 정리 String StringBuffer StringBuilder 가변 여부 X O O 연산 속도 느림 중간 빠름 동기화 O O X 스레드 세이프 O O X 저장 위치 String pool Heap Heap 1) String 문자열을 대표하기 때문에 조작에 필요한 대부분의 기능들을 제공한다. 또한, 레퍼런스형 변수이지만 기본 자료형처럼 선언할 수 있다. String은 다른 클래스와 달리 한번 메모리 공간에 할당되면 불변이다. 즉, +연산이나 replace등 문자열을 조작하면 새로운 String 객체를 만들어 바뀐 문자열을 저장하고 그 객체를 참조한다. 그리하여 문자열 연산이 많은 경우 성능이 좋지 않다. 간단하게 사용할 수 있고 동기화를 통한 스레드 세이프를 지원한다는 장점이 있다. 2) Stri..