Generics & Wildcard

Generics & Wildcard 당신은 아래의 코드를 읽을 수 있는가? 조금 어렵다면 이 글을 읽어보자 Generics 다양한 타입의 객체들을 다루는 method, collection에 컴파일 시점에 타입 체크를 해주는 기능 → 컴파일 시점에 체크를 하므로 객체 타입 안정성을 높이고 형변환의 번거로움이 줄어든다 사용하는 이유 Box 클래스는 Object 타입의 item을 멤버 변수로 작성되어졌다. Box 클래스의 item을 사용하려면 아래와 같이 형 변환을 해야 하는 번거로움이 있다. →컴파일러는 item의 타입이 String인지 모르기 때문 이러한 번거로움을 해결하기 위해 컴파일 시점에 타입을 체크할 수 있는 Generics가 도입이 되었다. Generics의 사용 선언 T : 타입 변수 Box : 원시 타입 : 여

2022년 11월 21일
·
0개의 댓글
·

람다식 1

람다식 람다식 (익명 함수) : 메서드를 하나의 식으로 표현한것 코드의 가독성, 코드 간결함 상승 메서드를 변수처럼 다루는 것이 가능 메서드의 매개변수로 전달되어지는 것이 가능 메서드의 결과로 반환 가능 위와같은 람다식은 다음과 같은 기능을 한다. 만약 람다식 없이 작성하게 되면 method기능을 하는 클래스 또한 추가로 만들고 객체를 생성해서 사용해야 한다. 사용법 예제 두 값 중에서 큰 값을 반환하는 메서드

2021년 10월 12일
·
1개의 댓글
·

ENUM

열거형 enums 서로 관련된 상수를 편리하게 선언하기 위한 것 Enum으로 정의 Class로 정의 메소드 |메소드|내용| |---|---| |getDeclaringClass() |enum의 Class 객체를 반환| |name()|enum의 이름을 문자열로 반환| |ordinal()|enum에 정의된 순서를 반환| |valueOf(String)|String과 일치하는 enum 반환| |values()|enum의 요소들을 순서대로 배열로 반환| |compareTo(E)|지정된 객체의 순서를 비교. 지정된 객체보다 작은 경우 음의 정수, 동일하면 0, 크면 양의 정수 리턴| 열거형 상수간의 비교시 '==' 연산자 사용가능 (equals보다 빠른성능) 그러나 비교연산자는 사용불가 (compareTo사용) 코드 실행결과 ![](https://images.velog.io/images/16min99/post/fc18ca52-b4fc-

2021년 9월 7일
·
0개의 댓글
·
post-thumbnail

Array(배열)과 List(리스트)

Array 여러 데이터를 하나의 이름으로 그룹핑해서 관리 하기 위한 자료구조 유일한 식별자 인덱스가 있음 배열은 정의와 동시에 길이를 지정하며 길이를 바꿀 수 없음 Array 단점 기능이 없음 기본적으로 배열은 길이를 바꿀수 없고 배열의 길이를 변경하기 위해서 다음과 같은 처리가 이루어 져야한다. 새로운 길이의 배열 할당 (메모리 공간 탐색) 데이터 복사 기존 배열 삭제 배열은 인덱스에 따라서 값을 유지하기 때문에, 원소(Element) 삭제되어도 빈 자리(null)가 남게 된다. (불필요한 메모리 공간 차지) List 빈틈없는 데이터의 적재, 순서가 있는 데이터의 모임 (Sequence) 몇 번째 데이터인가를

2021년 8월 25일
·
0개의 댓글
·