본문 바로가기

Language23

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.
Javascript - 객체 관련 함수 열거할 수 있는 하나 이상의 출처 객체로부터 대상 객체로 속성을 복사할 때 사용하는 함수 .assign()이 있다. 대상 객체를 반환한다. 겹치는 속성이 있으면 덮어쓰기가 된다.(얕은 복사) const a = { x: 1 } const b = { y: 1 } Object.assign(a, b) console.log(a) // {x: 1, y: 2} //Object.assign(target, source) => 복사된 target 객체를 반환 반복되는 지정된 객체의 고유한 속성 이름 배열을 반환하는 함수 Object.keys()함수가 있다. const object1 = { a: 'somestring', b: 42, c: false } console.log(Object.keys(object1)) // ['a.. 2022. 1. 19.
Javascript - 배열 관련 함수 배열의 길이를 반환하는 함수 .length가 있다. const arr = ['a', 'b', 'c'] console.log(arr.length) // 3 대상 배열과 주어진 별을 병합해서 새로운 배열을 반환하는 .concat() 함수가 있다. 대상 배열은 변경되지 않습니다. const arr1 = ['a', 'b', 'c'] const arr2 = ['d', 'e', 'f'] const arr3 = arr1.concat(arr2) // ['a', 'b', 'c', 'd', 'e', 'f'] 대상 배열의 모든 요소가 콜백 테스트를 통과하는지 확인하는 함수 .every()가 있다. const arr = [1, 2, 3, 4] const isValid = arr.every(item => item < 5) co.. 2022. 1. 18.
Javascript - 수학 관련 함수 주어진 숫자의 절대값을 반환하는 Math.abs() 함수가 있다. console.log(Math.abs(-3)) // 3 주어진 숫자를 올림, 내림, 반올림 해서 정수를 반환하는 함수 Math.ceil(), Math.floor(), Math.round()가 있다. const num1 = 3.14 const num2 = 3.7 console.log(Math.ceil(num1)) // 4 console.log(Math.floor(num1)) // 3 console.log(Math.round(num1)) // 3 console.log(Math.round(num2)) // 4 주어진 숫자 중 가장 큰 or 작은 숫자를 반환하는 Math.max(), Math.min() 함수가 있다. console.log(Math.. 2022. 1. 18.