일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- 우선순위 큐
- 맵
- c++
- dynamic debugging
- 위상 정렬
- java
- error
- 구현
- GCP
- 그리디
- 분할 정복
- 백트래킹
- OS
- 최단 경로
- BFS
- 이분 탐색
- 문자열
- dfs
- CVE
- web
- 시뮬레이션
- DP
- 데이크스트라
- thymeleaf
- Reversing
- 재귀
- 스택
- 누적 합
- Spring
- JPA
- Today
- Total
목록java (5)
hades
필요성데이터베이스에서 칼로리가 100보다 낮은 요리명을 선택하라는 SQL 쿼리문은 다음과 같다.SELECT name FROM dishes WHERE calorie SQL 쿼리문에서는 반복자, 누적자 같은 것이 필요 없이 기대하는 것이 무엇인지 직접 표현할 수 있다. 즉, 질의를 어떻게 구현해야 할지 명시할 필요가 없으며, 구현은 자동으로 제공된다. 컬렉션에서도 이와 비슷한 기능을 만들고 싶다. 많은 요소를 포함하는 컬렉션의 성능을 높이고 싶다. 성능을 높이려면, 멀티코어 아키텍처를 활용해서 병렬로 컬렉션 요소를 처리해야 한다. 또한, 통화별로 트랜잭션을 그룹화하고 싶다면, 다음과 같이 구현해야 한다. 코드가 상당히 길다.Map> transactionsByCurrencies = new HashMap();f..
필요성익명 클래스로 다양한 동작을 구현할 수 있지만, 만족할 만큼 코드가 깔끔하지는 않았다. 람다 표현식은 익명 클래스처럼 이름이 없는 함수이면서 메소드를 인수로 전달할 수 있으므로 람다 표현식이 익명 클래스를 대신할 수 있다. 람다란 무엇인가?람다 표현식은 메소드로 전달할 수 있는 익명 함수를 단순화한 것이라고 할 수 있다. 람다 표현식에는 다음과 같은 특징이 있다.익명 : 보통의 메소드와는 달리 이름이 없으므로 익명이라고 표현한다.함수 : 람다는 메소드와는 달리 특정 클래스에 종속되지 않으므로 함수라고 부른다. 하지만, 메소드처럼 파라미터 리스트, 바디, 반환 형식, 가능한 예외 리스트를 포함한다.전달 : 람다 표현식을 메소드 인수로 전달하거나 변수로 저장할 수 있다.간결성 : 익명 클래스와는 달리 ..

필요성동작 파라미터화를 이용하면 자주 바뀌는 요구사항에 효과적으로 대응할 수 있다. 동작 파라미터화란 아직은 어떻게 동작할 것인지 결정하지 않은 코드 블록을 의미한다. 변화하는 요구사항에 대응하기첫 번째 시도 : 녹색 사과 필터링사과 재고 목록에서 초록색 사과만 필터링하는 기능을 구현하면, 다음과 같다.public static List filterGreenApples(List inventory){ List result = new ArrayList(); for (Apple apple : inventory){ if (Color.GREEN.equals(apple.getColor())){ result.add(apple); } } return re..

본 글은 자바를 학습하면서, 타 언어에서 알고 있던 내용 이외에 추가로 기억할 사항을 정리하여 작성한 글이다. 즉, 모든 내용을 포함하고 있지는 않다. 변수와 타입명명 관례코드를 작성할 때, 여러 단어를 혼합하여 명명하는 경우, camel case를 사용하는 것을 기본으로 다음 상황에 따라 추가한다.자바 소스 파일명(클래스명)은 대문자로 시작하는 것이 관례이다. ex) Member.java, Item.java변수명은 소문자로 시작하는 것이 관례이다. ex) mathScore, uploadFile 변수 선언변수는 메모리 번지에 붙여진 이름이다. 변수를 선언한다고 해서 메모리에 할당되는 것은 아니다. 변수에 값을 대입해야 메모리가 할당된다. int x = 3;int y = 7;int temp = x;x = ..

🚨 에러java.lang.AssertionError: Expecting actual: jpabook.jpashop.Member@3fed0c04 and: jpabook.jpashop.Member@7d49fe37 to refer to the same object 🔍 분석Member라는 객체를 만들고, 데이터베이스에 저장한 후, id로 저장된 Member를 받아서 isSameAs로 비교하니 같지 않다고 한다. 👊 해결isSameAs는 참조를 비교하는 것인데, 생성했을 때의 Member의 참조는 데이터베이스에서까지 유지되지는 않는다. 단지, id와 username이 같은지만 확인하면 되므로, isEqualTo를 이용한다.