programing/Java8 Collections 자료구조 - ArrayList배열과 비슷인덱스가 존재데이터는 중복되어도 상관 없음단방향 포인터 구조순차적인 접근에서 강점자료의 재배치가 일어나 삽입, 삭제가 느리다 - LinkedListArrayList와 거의 비슷양방향 포인터구조데이터의 삽입, 삭제가 가장 빠름 - VectorArrayList와 비슷하지만 속도가 떨어짐 (잘 안쓰임)ArrayList보다 멀티쓰레드 환경에서 안전하여 때에 따라 사용 * 추가> 동적할당이 가능하여 생성시 크기를 정하지 않아도 됨> 항상 동기화가 되어 쓰레드가 1개 일 때도 동기화 때문에 성능저하가 있다> ArrayList는 동기화가 옵션이지만 데이터 추가/제거시 속도가 느리다. - HashMapKey & Value키는 유니크 해야함 (중복되지 않음) - HashSet데이터.. 2018. 2. 9. Annotation (@) annotation : 주석 JEE5부터 새로게 추가된 문법 요소 문서화, 컴파일러 체크, 코드 분석용으로 사용 1) Marker 어노테이션멤버 변수가 없으며, 단순히 표식으로서 사용됨컴파일러에게 어떤 의미를 전달2) Single-value 어노테이션멤버로 단일 변수만을 갖는 어노테이션단일변수 밖에 없기 때문에 값만 명시하여 테이터 전달3) Full 어노테이션멤버로 둘 이상의 변수를 갖는 어노테이션데이터를 값=쌍의 형태로 전달한다. 4) Built-in Annotation@Override: 오버라이드한 메소드임을 컴파일러에게 명시@Deprecated: 차후에 지원이 끊길 어노테이션 (사용 안함)@SupressWarning: 경고를 제거, Object형을 원소로 하는 컬렉션을 사용하면 컴파일러 에러가 발생.. 2018. 2. 9. 예외처리 1.try {// 문제가 발생할 수 있는 로직 기술} catch (Exception e) {// try 안에서 문제 발생했을 때 대처 방안 기술} 2.try { } catch (ArrayIndexOutOfBoundsException a) {// 배열 인덱스가 범위를 벗어났을 때} catch (NumberFormatException n) {// 숫자 포맷 예외 (문자를 숫자로 처리할 때)} catch (Exception e) {// 그외 예외} 3.try { } catch (Exception e) {System.out.println(e.getMessage()); // 문제 발생시 예외 메시지 보냄} 4.try { } catch (Exception e) { } finally {// 예외가 발생해도 무조건 실.. 2018. 2. 9. Java에서 자주 쓰이는 API - String Class concat() : 문자열 연결 substring() : 문자열 자르기 length() : 문자열 길이 toUpperCase() : 대문자로 만들기 toLowerCase() : 소문자로 만들기 charAt() : 특정위치의 글자 찾기 indexOf : 특정문자열의 위치 equals() : 문자열 비교 trim() : 문자열 공백제거 replace() : 특정문자 변경 replaceAll() : 특정문자열 변경 cf. String은 메모리를 과소비 한다. > String 객체의 경우 처음 초기화된 데이터에 변화가 생기면 기존 것을 재활용 하기보다는 새 것을 찾는다. => StringBuffer, StringBuilder 사용 - StringBuffer & StringBuilder.. 2018. 2. 9. 이전 1 2 다음