전체 글 171

즐겨찾기가 가장 많은 식당 정보 출력하기, 식품분류별 가장 비싼 식품의 정보 조회하기

https://school.programmers.co.kr/learn/courses/30/lessons/131123   오답 : SELECT food_type, rest_id, rest_name, max(favorites)from rest_infogroup by 1order by 4 desc GROUP BY를 사용할 때 문제는 GROUP BY에 명시된 컬럼이 아닌 다른 컬럼들(rest_id, rest_name)이 집계 함수 없이 SELECT 절에 포함될 경우 발생합니다. 이때 어떤 rest_id와 rest_name을 선택해야 할지 명확하지 않기 때문에 원하는 결과를 얻을 수 없습니다. 즉 "GROUP BY를 사용하면 MAX(favorites) 같은 집계 함수는 제대로 작동하지만, 동일한 음식 종류 내에서..

문자열 내 마음대로 정렬하기 // Arrays.sort(), Comparator<T>

https://school.programmers.co.kr/learn/courses/30/lessons/12915 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  오답 : import java.util.ArrayList;class Solution { public String[] solution(String[] strings, int n) { ArrayList arrayList = new ArrayList(); for (String str : strings) { arrayList.add(str); ..

캡상추다 - 다형성(같은 이름의 다양한 형태)

자바의 다형성(Polymorphism)은 같은 이름의 메서드나 객체가 여러 다른 형태로 동작할 수 있게 만드는 개념입니다.자바에서 다형성이라고 하면 다양한 이야기를 할 수 있지만,이 글에서는 기본인 오버라이딩과 오버로딩에 대해 이야기 하겠습니다.  오버라이딩 : 같은 메서드 이름, 같은 매개 변수로 상위 클래스의 메서드를 재정의오버로딩 : 같은 메서드 이름, 다른 매개 변수로 다수의 메서드를 중복 정의 public class Animal { public String name; public void showName() { System.out.printf("안녕하세요, %s입니다\n", name); } } public class Male extends Animal {..

Java/Java 문법 2024.10.13

정규 표현식(Regular Expression)

**정규 표현식(Regular Expression, RegEx)**은 문자열의 패턴을 정의하는 방법으로, 문자열을 검색, 추출, 치환하는 데 사용됩니다. 정규 표현식은 자바의 java.util.regex 패키지를 통해 사용할 수 있습니다. 이 패키지는 두 개의 주요 클래스인 Pattern과 Matcher를 제공하며, 이를 통해 패턴 매칭 작업을 수행합니다.  메타 문자설명예시설명.임의의 단일 문자 (\n 제외)a.ba, 임의의 단일 문자, b와 매칭^문자열의 시작을 나타냄^abcabc로 시작하는 문자열과 매칭$문자열의 끝을 나타냄xyz$xyz로 끝나는 문자열과 매칭*0개 이상의 문자가 반복됨ab*a 뒤에 b가 0개 이상 있는 경우와 매칭+1개 이상의 문자가 반복됨cd+c 뒤에 d가 1개 이상 있는 경우와..

Java/Java 문법 2024.10.12

Enum

Enum(enumeration : 열거) 제한된 목록에서 값을 가져와 사용하기 위해 만듭니다! 제한된 목록이란 예를 들어 성별의 남, 여 요일의 월, 화, 수, 목, 금, 토, 일 계절의 봄, 여름, 가을, 겨울 월, 혈액형 등이 있습니다. Enumpublic enum Season { // 변하지 않는 값이기에 상수처럼 대문자로 적는 것이 관례 SPRING, SUMMER, FALL, WINTER}  Enumpublic enum Week { MONDAY, TUESDAY, WEDNESDAY,// WENDESDAY 동일한 값 넣을 수 없음 THURSDAY, FRIDAY, SATURDAY, SUNDAY, FALL}  Classimpor..

Java/Java 문법 2024.10.10

조건에 맞는 사용자와 총 거래금액 조회하기 + HAVING 절

https://school.programmers.co.kr/learn/courses/30/lessons/164668 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr HAVING 절은 그룹화된 결과에 조건을 적용할 때 사용됩니다. SELECT USER_ID, NICKNAME, sum(price) AS TOTAL_SALESFROM ( SELECT a.user_id AS USER_ID, a.nickname AS NICKNAME, b.price AS price FROM USED_GOODS_USER a JOIN USED_GOODS_..

최대공약수와 최소공배수 // 스트림 연습

https://school.programmers.co.kr/learn/courses/30/lessons/12940  1.  아래 코드는 오류가 발생합니다. class Solution { public int[] solution(int n, int m) { int[] answer = new int[2]; // n, m 중 큰 값이 n이 되도록 스왑 if (n n % i == 0 && m % i == 0) .max() .orElse(1); // 최대공약수가 없으면 1 반환 // 최소공배수 (LCM) 계산: (n * m) / GCD int lcm = (n * m) / gcd; ..