Java(30)
-
자바 리마인드#20 스트림(1)
2023/04/07 학습내용 스트림(stream) 배열의 요소를 특정 기준에 따라 정렬하거나, 요소 중 특정 값을 제외하고 출력하는 기능 등 여러 자료의 처리에 대한 기능을 구현해 놓은 클래스가 스트림(stream)이다. -> 입출력을 위한 I/O 스트림과는 다른 개념이다. 배열 예시 // 배열 일반 출력문 int[] arr = {1, 2, 3, 4, 5}; for(int i = 0; i System.out.println(n)); 코드를 보면 Arrays.stream(..
2023.04.07 -
자바 리마인드#19 람다식
2023/04/06 학습내용 람다식(Lambda expression) 함수형 프로그래밍(Ficntional Programming)은 함수의 구현과 호출만으로 프로그램을 만들 수 있는 프로그래밍 방식이다. JAVA8부터 지원하는 함수형 프로그래밍 방식을 람다식(Lambda expression)이라고 한다. 1. 람다식 문법 람다식은 간단히 말해 함수 이름이 없는 익명 함수를 만드는 것이다. //람다식 문법 (매개변수) -> {실행문;} //람다식 ex) int add(int x, int y) {(람다식 변환)-> (int x, int y) -> {return x + y;} return x + y; } (람다식 코드 리뷰) 두 입력 매개변수(x, y)를 사용하여 {return x + y;}문장을 실행해 반환..
2023.04.06 -
자바 리마인드#17 컬렉션 프레임워크, List
2023/03/20 학습내용 프로그램을 개발할 때 사용하는 자료를 어떤 구조로 관리할 것인지가 중요하다. 프로그램의 기능을 효과적으로 구현할 수 있기 때문이다. 이 때 사용하는 것이 자료 구조(data structure)다. 자료 구조는 프로그램 실행 중 메모리에 자료를 유지·관리하기 위해 사용한다. JAVA에서는 필요한 자료 구조를 미리 구현하여 java.util 패키지에서 제공하고 있는데, 이를 컬렉션 프레임워크(Collection Framework)라고 한다. 1. 컬렉션 프레임워크 컬렉션 프레임워크는 개발자가 직접 자료 구조를 만드는 수고를 덜 수 있을 뿐만 아니라 잘 만들어진 자료 구조 클래스를 활용할 수 있게 해준다. 컬렉션 프레임워크에는 여러 인터페이스가 정의되어 있고, 그 인터페이스를 구현..
2023.03.20 -
자바 리마인드#16 제네릭(Generic) 프로그래밍
2023/03/13 학습내용 프로그램에서 변수를 선언할 때나 메서드에서 매개변수를 사용할 때 사용하는 자료형이 있다. 변수나 메서드의 자료형을 필요에 따라 여러 자료형으로 바꿀 수 있다면 프로그램이 휠씬 유연해 질 것이다. 이럴 때 사용하는 것이 제네릭 프로그래밍이다. 1. 제네릭(Generic) 프로그래밍 제네릭 프로그래밍은 어떤 값이 하나의 참조 자료형이 아닌 여러 참조 자료형을 사용할 수 있도록 프로그래밍한다. 제네릭 프로그래밍은 참조 자료형이 변환될 때 이에 대한 검증을 컴파일러가 하므로 안정적이다. 컬렉션 프레임워크도 많은 부분이 제네릭으로 구현되어 있다. 1) 제네릭 클래스 정의 제네릭에서는 여러 참조 자료형을 사용해야 하는 부분에 Object가 아닌 하나의 문자로 표현해야 한다. public..
2023.03.13 -
자바 리마인드#15 기본 클래스(2)
2023/03/09 학습내용 1. String 클래스 JAVA는 문자열을 사용할 수 있도록 String 클래스를 제공한다. 1) String을 선언하는 두가지 방법 String str1 = new String("abc");//생성자의 매개변수로 문자열 생성 String str2 = "test";//문자열 상수를 가리키는 방식 (1) String을 사용할 때 문자열을 생성자의 매개변수로 하여 생성하는 방식 (2) 이미 생성된 문자열 상수를 가리키는 방식 -> 두가지 방식은 내부적으로 큰 차이가 있다. new 예약어를 사용하여 객체를 생성하는 경우 "abc" 문자열을 위한 메모리가 할당되고 새로운 객체가 생성된다. 하지만 str2 = "test"와 같이 생성자를 이용하지 않고 바로 문자열 상수를 가리키는 경..
2023.03.09 -
자바 리마인드#14 기본 클래스(1)
2023/03/08 학습내용 1. Object 클래스 ※ java.lang 패키지 제일 보편적으로 사용하는 String, Integer와 같은 클래스는 java.lang 패키지에 속해 있다. String 클래스의 전체 이름은 java.lang.String이고, Integer 클래스의 전체 이름은 java.lang.Integer이다. 경로 java.base/java/lang 폴더를 보면 java.lang 패키지에서 제공하는 여러 소스 코드를 확인할 수 있다. 자바 프로그래밍에서 외부 패키지에 선언한 클래스를 사용할 때는 import문으로 클래스의 경로를 선언해야 한다. 하지만 java.lang 패키지는 컴파일할 때 import java.lang.*; 문장이 자동으로 추가되어 따로 import 하지 않아도 ..
2023.03.09