본문 바로가기

Language/Java13

Java - 스트림(stream) 스트림은 자바 8 API에 새로 추가된 기능이다. 스트림을 이용하면 선언형으로 컬렉션 데이터를 처리할 수 있다. 정확히는 데이터 처리 연산을 지원하도록 소스에서 추출된 연속된 요소라고 설명할 수 있다. 간단히는 스트림이 데이터 컬렉션 반복을 멋지게 처리하는 기능이라고 생각하자. 칼로리가 400이 안되는 음식들을 정렬하고 음식들의 이름만 가지는 리스트를 구하는 방법을 생각해보자. 스트림을 사용하기 전에는 for문을 돌면서 필터링한 리스트를 구한 뒤, 정렬을 하고, for문을 돌면서 새로운 리스트에 이름만 넣어주는 식으로 코드를 작성해야 한다. void filterAndSort(){ List lowCaloricDishes = new ArrayList(); for(Dish dish: menu) { if(dis.. 2022. 3. 3.
Java - 테스트 @ValueSource(ints = {4,5,6,7,8,9}) @ValueSource() @ParameterizedTest @NullAndEmptySource assertThat().isEqualTo() 2022. 1. 28.
Java - 문자열 2 자바에서 String 문자열을 사용할 때 '+' 연산자를 사용해서 문자열을 합치는 경우가 많다. 하지만 그보다는 StringBuilder의 append를 사용하면 메모리를 훨씬 최적화할 수 있다. StringBuilder builder = new StringBuilder(); String result1 = builder.append("동해물과백두산이") .append("마르고닳도록") .toString(); String result2 = "동해물과백두산이" + "마르고닳고록" //result1 만드는 과정이 훨씬 메모리 최적화가 잘 돼 있음 2022. 1. 24.
Java - static, final이란? 자바의 변수에 붙은 static은 무엇을 의미할까? 클래스에서 사용하는 공통 변수를 의미한다. A클래스의 인스턴스 b에서 값을 변경하면 c에서도 변경된 값을 확인할 수 있다. 자바의 변수에 붙는 final은 무엇을 의미할까? the final keyword is used in several contexts to define an entity that can only be assigned once. final은 entity를 한 번만 할당해줍니다. 즉 final은 immutable/Read only인 속성이라고 볼 수 있습니다. 쉽게 말해서 상수라고 볼 수 있다. 통상적으로 모두 대문자를 사용해서 표현한다. 일반적으로 오버라이드로 인한 실수를 줄이기 위해 많이 사용됩니다. 2021. 10. 19.
Java - 문자열 어떤 프로젝트를 하던 문자열(String)의 사용은 필수적입니다. Java에서는 어떻게 문자열을 사용하는지 알아봅시다. 먼저 선언하고 값을 할당하는 방법입니다. str이라는 이름의 String 변수를 생성했고, "string"이라는 값을 할당해줬습니다. 그리고 str.length()함수를 이용해서 문자열의 길이를 반환받습니다. String str; str="string" System.out.println(str.length());//6이 출력됨 문자열 비교 1 문자열이 같은지 비교해서 같으면 true 다르면 false를 반환해줍니다. String str1=new String("abc"); String str2=new String("abc"); String str3=new String("abcd"); if.. 2021. 7. 9.
Java 스택, 큐 사용 어떤 언어를 사용하던 스택과 큐가 필요한 순간이 있다. 코딩테스트 준비를 위해서 Java에서 스택과 큐를 어떻게 선언하고 사용하는지 알아봅시다. import java.util.*; public class Example{ public static void main(String[] args){ Stack st=new Stack(); Queue q=new LinkedList(); st.push(); st.push(); q.offer(); q.offer(); int k=st.pop(); //b 값이 들어가고 b가 스택에서 빠짐 k=q.poll(); //a값이 들어가고 a가 큐에서 빠짐 } } 2021. 7. 9.