질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] ShoppingCart클래스 아래와 같이 풀어봤는데 이런식으로 풀어도되나요?
안녕하세요. 강의 잘 보고 있습니다! [실습] WHERE문이 사용된 SQL문 튜닝하기 - 2 해당 강의에서 질문이 있습니다 :) 이전 강의에서 멀티 컬럼 인덱스의 경우, 첫번째 컬럼 기준으로 먼저 정렬하고, 그 다음 두번째 컬럼 기준으로 정렬한다고 배웠던 것 같습니다! 따라서 idx_created_at <-> idx_created_at_department 실행계획 idx_department <-> idx_department_created_at 실행계획이 각각 비슷할 것이라고 예상했는데, 강의에서는 idx_created_at과 두 개의 멀티 컬럼 인덱스 idx_created_at_department, idx_department_created_at 가 비슷하다는 것을 알 수 있었습니다! 이유가 궁금하여 질문 남겨봅니다 !
void swap(int *a, int *b) { int temp = *a; *a = *b; *b = temp; } 위 코드가 swap 함수가 두 숫자를 교환하는 과정을 메모리 주소를 활용해서 나타낸건가요? int temp = *a; *a = *b; *b = temp; 이게 왜 있는지 이해가 안 가서요ㅠ
JPQL에서 DTO를 조회할 때 new 패키지명.DTO명(...) 을 생략하고 바로 select m.id, m.name, t.name 이렇게 작성해도 DTO로 반환이 되는데 원래 가능한 내용인가요?? @Query("select new study.datajpa.dto.MemberDto(m.id, m.name, t.name) from Member m join m.team t") List<MemberDto> findMemberDto(); @Query("select m.id, m.name, t.name from Member m join m.team t") List<MemberDto> findMemberDtoNot();
20:56번의 문제가 잘 이해가 되지 않습니다. 특히나 다른 사람 질문 내용 봤는데도요 int arr[5] = {20,30,40,50,60} int *ptr; ptr= arr; ++*ptr이 왜 21인인가요? 실행 순서때문에 그런건가요? 제가 생각한건 사실 먼저 증가된다음 포인터가 호출될꺼라 생각을 해서 * (ptr+1) == *( arr +1) == arr[1] 을 생각하긴했거든요 *ptr++의 경우 *ptr은 주소 값이 아닌 주소값의 value를 가져오는거라 value값을 가지오는 과정 후에 ++연산이 들어간다고 생각을 해서 *ptr++==arr[0]++ == arr[0]+1로 생각을 했거든요 이부분에 대해 설명이 필요해서 돌려보는데 이해가 잘 안되서요 ++*ptr이 arr[0]+1인거랑 *ptr++가 arr[0+1]인 설명이 필요합니다. 일단 외울께요
printf("입력된 문자열: %s\n", str); 에서 str이 아니라, 그냥 str만 왔기 때문에 str의 값인 this is string이 나온 것이고, * 을 붙이고 *str이었다면 this is string에서 첫 글자인 t만 출력되는 것이지요?? 맞게 이해한건지 확인하고자 질문 드립니다.
char * ptr_a=a; int *ptr_b=b; 왜 위와 같이 배열의 주소를 a, b로 선언한건지? 선언을 해야 하는건지? 이해가 안 가요 저렇게 되면 ptr_a의 메모리 주소는 a, ptr_b의 메모리 주소는 b가 되는거니까 출력할때 각각 a,b가 나올 줄 알았는데, 배열의 첫번째 요소로 되니까 헷갈려요ㅠ
강의: 업캐스팅(부모 형태, 자식 생성자) 13:29에 나오는 업캐스팅 문제 예시 5번과 15:57에 나오는 업캐스팅 문제 예시 7번 차이에 대해서 A b = new B(1); 둘 다 같은 조건에서 13:29에는 super가 없어도 부모 기본 생성자가 생성되면서 정상 출력이 되는데, 여기에서 super가 없는데 왜 부모 기본 생성자가 출력이 되는지 이해가 안 됩니다. public B(int i) { System.out.println("생성자 BB" + i); } 15:57에는 비록 super가 뒤에 있지만 Public B(int i) { System.out.println("생성자 BB" + i); super(10); 문제 예시 5에 따르면 예시 7 역시 부모 기본 생성자가 생성되지 않나요?
업캐스팅(부모 형태, 자식 생성자) 14:09 A b = new B(1); 에서 코드 따라가면 public B(int i) { System.out.println("생성자 BB" + i); { 이고 부모 생성자를 호출하는 super가 없는데 왜 부모 기본 생성자가 출력되었나요?
강사님 안녕하세요! 강의 잘 듣고 있습니다. 너무 좋네요! 😊 [실습] 인덱스 직접 설정해보기/성능 측정해보기 => 실습 중 질문이 있습니다! user.age에 인덱스 생성 전 [2026-07-12 11:51:16] 1,028 rows retrieved starting from 1 in 420 ms (execution: 110 ms, fetching: 310 ms) => 이런식으로 평균 400ms 속도가 측정되다가 user.age에 인덱스 생성 후 [2026-07-12 12:19:48] 1,028 rows retrieved starting from 1 in 510 ms (execution: 11 ms, fetching: 499 ms) [2026-07-12 12:19:59] 1,028 rows retrieved starting from 1 in 339 ms (execution: 9 ms, fetching: 330 ms) [2026-07-12 12:20:09] 1,028 rows retrieved starting from 1 in 329 ms (execution: 7 ms, fetching: 322 ms) 인덱스 생성 후 최초 실행시에 510ms로 시간이 한번 튀는데 검색해 봤을때는 인덱스 생성 직후 캐싱 되어있지 않아서 발생하는 현상이라고 하는데 이러한 것은 신경쓰지 않아도 되는지 궁금합니다! 감사합니다!
표에서는 토탈값이 계속 계산되지만 이는 계산과정에 있어 필요할까봐 넣어주신 예시사항일뿐인거고 코드상으로는 I가 15가 되어서 for문이 종료되었을때의 기준 sumQ와 R 을 더하여 Total값이 50이 되는과정 한번만 있는게 맞는걸까요? 토탈이 계속 증가할 이유를 찾지 못하겠어서 질문드립니다
맨아래 printf("%d\n",count);에서 \n이 있어서 저는 출력값이 아래와 같을 줄 알았거든요 1 2 3 4 5 6 7 그런데 정답이 7이더라구요 왜 제가 생각한 것처럼 위와 같이 안 나온 건지 모르겠습니다 그리고 위와 같은 출력값이 나오려면 코드를 어떻게 써야 되는지도 궁금합니다