Ⅱ. 자바 API의 함수형 인터페이스 1. 함수형 인터페이스와 표식 (어노테이션 annotaion) - 함수형 인터페이스 : 기능 하나를 정의하는 인터페이스 (인스터스가 필요하지 않을 수도 있음) ※ 함수형 인터페이스의 조건 : 추상 메소드가 딱 하나만 존재 - @FunctionalInterface : 이 것이 함수형 인터페이스임을 명시하는 어노테이션 // Example package sample; // 이 것이 함수형 인터페이스임을 명시하는 어노테이션 @FunctionalInterface interface Calculating { int cal(int a, int b);// 함수형 인터페이스 // default 메소드도 추상메소드가 아님 default int muliply(int a, int b) { ..
Ⅰ. 람다식(Lambda Expression) 1. 람다식 ※ 람다(Lambda) : 코드를 간결하게 작성하기 위해 사용하는 일종의 표현식 - 함수형 인터페이스를 다루는 방식 - 자바에서 함수적 프로그래밍 지원 기법 - 코드의 간결화 및 병렬처리에 강함 - ' -> ' 를 사용하여 표현 ※ 함수형 인터페이스의 조건 : 메소드 하나만 정의하면 됨 == 추상 메소드가 하나 있음 - 람다식을 사용하면 오직 메소드 하나만 정의해서 단독으로 사용할 수 있음 2. 람다식의 특징 - 매개변수가 하나인 경우에는 소괄호 생략 가능 - 실행문이 하나인 경우에는 몸통 중괄호 생략가능 - 반환값만 존재하는 경우에는 return과 중괄호 생략 가능 3. 람다식을 사용하는 경우 - 인스턴스보다 그저 단 하나의 기능이 필요한 상황..
1. 랜덤 클래스(Random Class) - 무작위로 값을 생성해내는 내부 알고리즘을 지닌 클래스 - import java.util.Random; 를 입력 2. 랜덤 클래스의 기능 - Random( ) : 랜덤한 값 생성 - nextInt( ) : 랜덤한 값 출력 (100을 넣으면 100중에서 출력) // Example package smaple; import java.util.Random; public class Main { public static void main(String[] args) { Random a = new Random();// 랜덤한 값 생성 for(int i = 0; i < 5; i++) { // 종자값(seed) : 이 것을 토대로 구해서 줌 System.out.println(a..
Ⅵ. Stack 1. Stack(스텍) - 일직선으로 되어 있는 자료구조로 First In Last Out 를 지님 2. Stack의 특징 - 최신 자바에서 Stack 클래스가 사장되었음(사라짐) - 대신, 그것을 대체하는 무언가를 사용 - 대체 클래스는 바로, Deque(덱) ※ Deque : 양쪽 입구가 뚫려있어 입구를 앞, 뒤로 가능 (입구 한 곳을 막아 Stack처럼 사용) 3. Deque의 기능 - offerFirst( ) : 앞 쪽을 입구로 사용하여 데이터를 삽입 - offerLast( ) : 뒷 쪽을 입구로 사용하여 데이터를 삽입 - peekFirst( ) : 맨 앞을 출력 - peekLast( ) : 맨 뒤를 출력 // Example package sample; import java.uti..
Ⅴ. Queue 1. Queue(큐) - 일자로 된 자료구조로, 선입선출 구조(FIFO : First In First Out)를 지님 2. Queue의 특징 - 먼저 들어간 것이 반드시 먼저 나옴 - LinkedList 클래스는 Queue를 다중상속함 ※ LinkedList는 Queue로 참조하면 Queue의 기능을, List로 참조하면 List의 기능을 가짐 - 인덱스가 없음 3. Queue의 기능 - offer( ) : 데이터를 삽입 - 선입선출 관련 2 개의 메소드 : peek & poll - peek( ) : 당장 꺼낼 수 있는 것을 확인 - poll( ) : 그 것을 실제로 꺼냄 // Example1 package sample; import java.util.*; // Queue public c..
비주얼 스튜디오를 이용하여 소스 파일(source file) 작성 1. 컴파일 - Ctrl + Shift + B 를 사용하여 컴파일함 (아랫 부분의 출력 창에 메시지로 알림) 2. 컴파일 과정 - 전처리(Preprocess) → 컴파일(Compile) → 링크(Link) ※ 이 것은 추후에 다시 다룰 예정 3. 실행 - Ctrl + F5