묻고 답해요
131만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
코드 확인 부탁드립니다 ㅠ
import java.util.*; public class Main { public static void main(String[] args){ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[][] arr = new int[n][n]; for(int i = 0; i < n; i++) { for(int j = 0; j < n; j++) { arr[i][j] = sc.nextInt(); } } int m = sc.nextInt(); int[] moves = new int[m]; for(int i = 0; i < m; i++){ moves[i] = sc.nextInt(); } ArrayList<Stack<Integer>> board = new ArrayList<>(); for(int i = 0; i < n; i++) { Stack<Integer> temp = new Stack<>(); for(int j = 0; j < n; j++) { if(arr[n-1-j][i] == 0) break; temp.push(arr[n-1-j][i]); } board.add(temp); } Stack<Integer> basket = new Stack<>(); int result = 0; for(int i = 0; i < m; i++) { int num = moves[i]-1; Stack<Integer> stack = board.get(num); if(stack.empty()) continue; int popNum = stack.pop(); if(!basket.isEmpty() && basket.peek() == popNum) { basket.pop(); result += 2; } else { basket.push(popNum); } } System.out.print(result); } }어느 부분에서 틀린지 모르겠습니다. 확인 해주시면 감사하겠습니다.ㅠㅠ
-
해결됨김영한의 실전 자바 - 중급 1편
열거형 Stringing - ENUM 에서 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕 하세여. 궁금중이 생겨서 질문을 남깁니다.영한님 코드 중에, String에서 ENUM으로 변환 하는 방법을 보여주셨습니다.근데. 왜? 쓰는지 이유를 모르겠더라고요.(귀찮아 보이고요)사진에 보인 것 처럼그냥 name() 메서드를 써서 바로 불려내면 될 것이란 생각도 되고,Grade gold1 처럼 그냥 Grade.GOLD를 써서 바로 담으면 되는 거 아닌가? 라는 생각도 하게 됩니다.왜 이렇게 쓰는 이유 좀 알켜 주시면 안되나요?추가 - 코드를 이렇게 쳐보니 되더라고요.답변 부탁 드립니다.
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
영속성에 대해
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]강의 듣다가 궁금해져서요!@Transactional 어노테이션 안에 메소드에선 영속성이고 그게 아니면 준영속성이라는 말씀이신건가요??
-
해결됨김영한의 실전 자바 - 중급 2편
4. 컬렉션 프레임워크 - LinkedList 오타 수정
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요. 4 컬렉션 프레임워크 - LinkedList pdf 파일의 33 페이지 MyLinkedListV3.java 코드의 toString() 메서드에 반환이 MyLinkedListV1으로 되어있습니다. MyLinkedListV3으로 수정 해주시면 감사하겠습니다.
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
11
11
-
해결됨김영한의 실전 자바 - 중급 1편
예외발생 추적 스택 트레이스 출력 이해하는 방법 질
예외 처리 도입1- 시작 강의를 듣고 질문드립니다.(예외처리2-실습의 강의안 5페이지)이 부분 예시에서 에러가 발생했을 때 스택 트레이스 순서가 궁금합니다.(error1을 입력했을 때 예시) (스택 트레이스의 밑에 줄부터 문제 발생 시작점이라고 이해했는데 맞을까요?...) 제 생각엔 우선at exception.ex2.MainV2.main(MainV2.java:22) 이걸 처리하는 과정에서at exception.ex2.NetworkServiceV2_1.sendMessage(NetworkServiceV2_1.java:11) 다시 이걸 처리하게 되는 과정에at exception.ex2.NetworkClientV2.connect(NetworkClientV2.java:15) 이걸 처리해야하는데여기서 예외처리가 발생했고(NetworkClientExceptionV2)아무도 catch하고 있지 않으므로 다 던지기만해서 최종적으로 main에서 던지게 되는 것으로 이해했는데 맞을까요?Exception in thread "main" exception.ex2.NetworkClientExceptionV2: http://example.com 서버 연결 실패
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
자식 생명 주기 관리, Cascade.PERSIST + orphanRemovel=true
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]CascadeType.ALL + orphanRemoval = true 를 사용하여 부모 엔티티를 통해 자식 엔티티의 생명주기를 관리할 수 있다는 것을 이해했습니다. orphanRemoval = true 가 CascadeType.REMOVE 의 기능도 같이 한다고 말씀해주셨는데, 제 생각에는 그렇다면 CascadeType.PERSIST + orphanRemoval = true 로도 부모 엔티티가 자식 엔티티의 생명주기를 관리할 수 있는 것 같은데, 맞는지 궁금합니다. ALL 의 경우는 아무래도 기능이 정확하게 명시되어 있는게 아니다 보니 가능하면 이렇게 사용하고 싶어서 질문드립니다. 코드로는 1,2번에 대해 동일한 결과를 출력하는 것을 확인했습니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
memberRepositoryTest 코드 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. https://drive.google.com/file/d/1tczZBCt9-gL3mcnTTvlFmGuGq0YqZv71/view?usp=drive_linkRepositoryTest 코드는 정상적으로 돌아가는데 DB연동이 안됩니다. 코드 돌려보면 콘솔박스에 create table도 안생기는 것 같아요(참고로 코드는 member대신 user로 모두 바꿨습니다)
-
해결됨김영한의 실전 자바 - 중급 2편
컬렉션 프레임워크 - List pdf 오타
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요.컬렉션 프레임워크 - List pdf 에 자바가 제공하는 배열 리스트와 연결 리스트 - 성능 비교 표 에 연결 리스트의 "뒤의 추가(삭제) 부분" O(n) ->O(1) 로 수정이 필요할 거 같습니다.
-
미해결자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]
interrupt 스레드 시작안했는데도 걸리나요
sleep 1초 동안 thread1 시작도 안했었는데,어떻게 thread2에서 thread1을 interrupt 해서 결과가 true인지 궁금합니다.다시 말해서 아직 시작도 안한 스레드를 어떻게 interrupt 한걸까요?
-
미해결
Access Token과 Refresh Token을 어디에 저장해야 할까요?
현재 프로젝트를 진행중인데, Access Token과 Refresh Token을 헤더에 담아 로컬스토리지에 저장하는 방법을 사용중입니다. 그런데 로컬 스토리지는 보안에 취약하다는 글을 보았습니다. 로컬 스토리지에 담아도 jwt 정책으로 대응이 가능하다는 글도 있었습니다. Access Token과 Refresh Token을 어디에 저장해야 할까요? 만약 로컬 스토리지나 쿠키에 저장한다면 어떻게 관리해야하나요?
-
미해결김영한의 실전 자바 - 중급 2편
캐스팅 관련 질문 있습니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.package generic.ex1; public class BoxMain2 { public static void main(String[] args) { ObjectBox integerBox = new ObjectBox(); integerBox.set(10); Integer integer = (Integer) integerBox.get(); //Object -> Integer 캐스팅 System.out.println("integer = " + integer); } }위 코드에서 integerBox.set(10);을 빼고 실행해봤는데 integerBox.get()은 null인 상태인데 classCastException이 터지지 않더라고요 null인 경우면 원래 classCastException이 터지지 않나요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
./gradlew build 후 에러가 났습니다.
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]이렇게 에러가 났는데, 초심자라 전혀 해석을 못하겠습니다.JDK17, Gradle8.7, SpringBoot 3.1.11 로 실행하고 있습니다. 처음 JAVA8을 사용하고 있다가, springboot가 3.0만이 지원되고 있다고 하여, JAVA17을 설치하여 환경변수 등 모두 잘 설정하였습니다. 이외에 수강 내용대로 잘 따라가서, 인텔리제이에서 실행할 때에는 잘 되고 있었는데, wsl에서 build를 하니 에러가 났네요. 어떤 점이 잘못된 걸까요?
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
양방향 연관관계 메서드에서 순서
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요. 강사님 덕분에 JPA를 이해하며 공부중입니다. 항상 양질의 강의와 사례를 들어 설명해주셔서 감사합니다. 다름이 아니라 제가 양방향 연관관계에 있어 이해한것이 맞는지, 그리고 연관관계 메서드 설정 시 코드원리에 있어 궁금한 점이 있어 질문남깁니다.<이해한 내용>양방향 연관관계는 RDBMS에서는 표현가능하나, 자바 객체에서는 직접적으로 표현이 어려워 단방향 2개를 사용하여 표현한다.그렇기에 서로를 참조하는 형태이기 때문에 데이터 변경을 양쪽에서하면 무한루프, 데이터 불일치,성능 문제가 발생한다.그렇기에 연관관계의 주인(테이블에서의 N)으로 설정해주어 주인에서만 데이터 반영이가능하고 다른 1쪽에서는 mappedBy를 이용해 읽기 전용으로만 설정하여준다. 그렇기에 member.setTeam(team);연관관계 편의 메서드를 통해 참조를 넣어주고, 영속성에 의해 관리되는 즉 1차 캐시에서의 객체내에서 조회될 수 있도록 한다.(객체지향적임) 물론 em.flush();em.clear();를 사용하면 자바에서 우리가만든 객체가아닌 JPA에서의 객체를 반환하여 조회되서 상관없긴하다. 근데 넣어주자.연관관계 편의메서드는 비즈니스 로직상 컨트롤하는 부분이 많은쪽에 만드는것이 좋다.<질문>이 연관관계 메서드에서는 orderItem내의 order가 주입되지않은상태로 List에 저장된 후 order를 주입해주는데 결과는 똑같은것같은데위와같이 주입시켜주고 그것을 List에 저장시키는게 더 좋은것아닌지 궁금해서 질문드립니다. 어차피 조회할때는 Order객체를 통하기때문에 순서는 상관이없나요? 사소한것일수도있고 제 자바에 대한 부족함이 커서그런것같지만 너무 궁금해서 질문드립니다.. 장문이라 죄송합니다ㅜㅜ
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
인텔리제이 설치후 프로젝트 폴더 안보임 맥북
폴더가 안보여요 ㅠㅠ
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
Switch문 강의에서 변수 초기화관련 질문드립니다.
Switch문 강의에서 강사님은 coupon 변수를 선언 후에 초기화를 안 하셔도 컴파일 에러가 발생하지 않습니다. 하지만 제가 작성한 코드에서는 coupon 변수를 초기화 하지 않았다는 에러가 발생합니다. 관련 이미지 첨부하였습니다.[제가 작성한 코드입니다.][강사님이 작성하신 코드 화면캡쳐]감사합니다.
-
미해결김영한의 실전 자바 - 중급 1편
== 의 존재의 이유
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]String에 대해서 equals 사용의 일관성을 가지는 것의 이유를 잘 이해했습니다. 그렇다면 String에서의 == 비교에 있어서 ==의 필요성은 전혀 없게 되는 것일까요?
-
미해결
Spring 백그라운드 실행
안녕하세요 ! Spring으로 소프트웨어를 개발 중에 있습니다 !코드를 작성 후 서버를 원격으로 백그라운드 실행을 하려고nohup java -jar 파일이름.jar & 이렇게 터미널에 입력후 실행이 되도록 하였습니다.터미널 창에 입력 후 엔터를 누르게 되면 백그라운드 실행이 된다고 하여 엔터를 누르면 그대로 프로세스가 종료되어 버립니다. 혹시 왜 이런지 알 수 있을까요 ..? sudo를 붙여도 똑같이 종료됩니다 ...
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
섹션 6. 순수 jbdc
이 부분이 임포트가 아예 안 됩니다ㅠㅠimport org.springframework.jdbc.datasource.DataSourceUtils; 그래서DataSourceUtils.getConnection(dataSource);이렇게 인텔리제이에서 빨간 불이 들어오구요ㅠㅠ DataSourceUtils에만 빨간 불이 들어옵니다!!어떻게 해결해야 할까요!!private Connection getConnection() { return DataSourceUtils.getConnection(dataSource); } private void close(Connection conn, PreparedStatement pstmt, ResultSet rs) { try { if (rs != null) { rs.close(); } } catch (SQLException e) { e.printStackTrace(); } try { if (pstmt != null) { pstmt.close(); } } catch (SQLException e) { e.printStackTrace(); } try { if (conn != null) { close(conn); } } catch (SQLException e) { e.printStackTrace(); } } private void close(Connection conn) throws SQLException { DataSourceUtils.releaseConnection(conn, dataSource); }
-
미해결자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]
synchronized 블록 동기화 마지막 예제
데드락 걸릴 수 있을거 같은데 맞나요?thread a: accountA.lockthread b: accountB.lockthread a : accountB.lock (대기)thread b: accountA.lock (대기)