본문 바로가기

java5

[Java] Stream 이란, Stream의 필요성 - 1 1. 개요 이번 게시물에서는 Java 8에서 부터 제공하는 Stream에 대해서 알아볼 것이다. Stream이 언제, 왜 나왔는지부터 시작해서 Stream의 구성요소까지 순서대로 알아보자. 실제 Stream을 사용하는 방법에 대해서는 다음 게시물을 살펴보자. [Java] Stream 사용법 - 2(작성중)  2. Stream Stream은 마찬가지로 자바 8에서 추가된 람다식을 활용할 수 있는 기술이다. 자바 8 이전에는 배열 혹은 Collection 인스턴스의 데이터를 다뤄야 할 경우에 for, for-each문을 주로 사용하였다.int[] testList = { 5, 4, 3, 2, 1 };for (int i=0; i  이렇게 간단한 경우는 상관없다. 하지만 로직이 복잡해지면 코드의 양도 덩달아 길어.. 2024. 5. 2.
[Java] String.repeat() 1. 개요 지금까지 문자열을 반복해야 하는 경우 for문을 사용했었는데, 자바 11부터 생긴 repeat()을 사용하면 편하게 문자열을 반복시킬 수 있다. 2. String.repeat() 바로 코드를 통해 확인해보자. public class Repeat { public static void main(String[] args) { StringBuilder sb = new StringBuilder(); String str = "Hello "; for (int i=0; i 2023. 5. 31.
[Java] StringBuilder 1. 개요 이번 게시물에서는 StringBuilder에 대해 작성해 볼 것이다. 2. 일반적인 문자열 덧셈 String a = "Hello"; String b = " String"; String c = "Builder!"; String result = a + b + c; System.out.println(result); 일반적으로는 위와 같이 문자열 덧셈 연산자를 활용하여 사용한다. 하지만, 이를 성능적인 측면에서 봐보자. String a = "Hello"; String b= " hi"; a += b; String은 불변(immutable) 객체이다. 즉, 한번 만들어지면 그 값을 수정할 수 없는 객체이다. 위의 예시를 보자. a += b가 계산될 때, String 객체는 불변이므로 새로운 String .. 2023. 5. 29.
[Java] 코테 준비를 위한 입출력 1. 개요 자바 사용 시 일반적으로는 System.out.println(""), Scanner 를 사용하여 입출력을 처리한다. 하지만 코딩 테스트 문제를 풀기 위해서, 이 두 방식은 시간 소모가 심하다는 단점이 있다. 구글링하면 많이 나오는 정보들이지만, 한번 정리하기 위해 어떤 클래스를 사용해야하는지 정리해볼 것이다. 2. 자바 입력 클래스 BufferedReader를 사용하는 것이 Scanner를 사용하는 것보다 빠르다. BufferedReader BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String input = br.readLine(); 하지만 BufferedReader는 정수를 입력받는 함수를 제공해주지 .. 2023. 5. 29.
자바(Java) - static import 1. static import - 일반적인 import와 다르게, static import을 하게 될 시 라이브러리의 메서드, 혹은 변수를 클래스명 없이 접근 가능하게 해준다. - 예를 들어보면, import static java.lang.Math.PI; System.out.println(PI); - 일반 import라면 Math.PI라고 작성해야 한다. - 사실 굳이 이렇게 줄여야 하나? 라고 생각할 수 있으나, 가독성 측면에서 도움이 될 수 있다. - 다음 예시를 보자. import org.assertj.core.api.Assertions; import static org.assertj.core.api.Assertions.*; public class StaticImportTest { @Test voi.. 2022. 12. 17.