묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
시간복잡도가O(N^2)이라고 생각 되서 시간이 초과될거같은데 오류가 안나서 궁금합니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.import java.util.Arrays; import java.util.Scanner; public class lecture27 { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); int n=scanner.nextInt(); int m=scanner.nextInt(); int []arr=new int[n]; for (int i = 0; i <n ; i++) { arr[i]=scanner.nextInt(); } int count=0; for (int i = 0; i <n ; i++) { int sum=arr[i]; for (int j = i+1; j <n ; j++) { sum=sum+arr[j]; if(sum==m) { count++; } else if(sum>=m) { break; } } } System.out.println(count); } }이 코드로 정답입니다는 받았는데 , 제 생각에는 O(n^2)이라 시간 초과가 나야할것 같은데 이중 for문이니까 시간 초과가 나지 않아서 어떤 부분에서 잘못 생각한건지 궁금합니다.
-
해결됨김영한의 실전 자바 - 중급 1편
마지막 단에서 공통 처리할 때의 catch 부모 예외
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]5:50에서 공통 처리 catch를 최상위 예외인 Exception으로 잡았는데결국 해결할 수 없는 예외들은 언체크 예외들로 구성되어 있으니깐 RuntimeException으로 잡는게 낫지 않나요?다른 케이스가 있어서 그런건지 궁금해서 질문 남깁니다.
-
해결됨김영한의 실전 자바 - 중급 1편
섹션6. 문제와 풀이
1번째 질문 : 아래쪽 while 부분에 "%2d "가 어떻게 간격을 맞출 수 있는 건가요?%는 연산자에서 나머지를 뜻하는데 뭔가 다른 기능이라도 있는 건가요?2번째 질문 : int offsetWeekDays = first.getDayOfWeek().getValue() % 7; 는 날짜의 요일을 맞추기 위해서 만든 거 같은데 왜 굳이 끝에 '% 7'을 표시해서 나머지로 구하는 건가요?'% 7'을 뺀다음에 first의 날짜를 2024. 1. 10 일로 바꿔도 정상작동하는데 뭔가 이유가 있는 건가요?나머지로 값을 구하는 이유가 있을까요?전체 코드 첨부하겠습니다!public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("년도를 입력하세요 : "); int year = scanner.nextInt(); System.out.print("월을 입력하세요 : "); int month = scanner.nextInt(); printCalendar(year, month); } private static void printCalendar(int year, int month) { LocalDate first = LocalDate.of(year, month, 1); LocalDate firstNext = first.plusMonths(1); // 월요일 (1%7) = 1, 화요일 (2%7) = 2, ... 일요일(7%7) = 0 int offsetWeekDays = first.getDayOfWeek().getValue() % 7; System.out.println("Su Mo Tu We Th Fr Sa"); for (int i = 0; i < offsetWeekDays; i++) { System.out.print(" "); } LocalDate dayIterator = first; while (dayIterator.isBefore(firstNext)) { System.out.printf("%2d ", dayIterator.getDayOfMonth()); if (dayIterator.getDayOfWeek() == DayOfWeek.SATURDAY) { System.out.println(); } dayIterator = dayIterator.plusDays(1); } }
-
미해결예제로 배우는 스프링 입문 (개정판)
mvnw 오류
오류내용 도움이 필요합니다 ㅠㅠ [ERROR] [ERROR] Some problems were encountered while processing the POMs:[ERROR] Non-resolvable import POM: The following artifacts could not be resolved: io.rsocket:rsocket-bom:pom:1.1.3 (absent): Could not transfer artifact io.rsocket:rsocket-bom:pom:1.1.3 from/to central (https://repo.maven.apache.org/maven2): C:\Users\Administrator\.m2\repository\io\rsocket\rsocket-bom\1.1.3\rsocket-bom-1.1.3.pom.16617097273503382256.tmp -> C:\Users\Administrator\.m2\repository\io\rsocket\rsocket-bom\1.1.3\rsocket-bom-1.1.3.pom @ org.springframework.boot:spring-boot-dependencies:3.2.1, C:\Users\Administrator\.m2\repository\org\springframework\boot\spring-boot-dependencies\3.2.1\spring-boot-dependencies-3.2.1.pom, line 2732, column 19[ERROR] Non-resolvable import POM: The following artifacts could not be resolved: org.springframework.restdocs:spring-restdocs-bom:pom:3.0.1 (absent): Could not transfer artifact org.springframework.restdocs:spring-restdocs-bom:pom:3.0.1 from/to central (https://repo.maven.apache.org/maven2): C:\Users\Administrator\.m2\repository\org\springframework\restdocs\spring-restdocs-bom\3.0.1\spring-restdocs-bom-3.0.1.pom.2597863818678506325.tmp -> C:\Users\Administrator\.m2\repository\org\springframework\restdocs\spring-restdocs-bom\3.0.1\spring-restdocs-bom-3.0.1.pom @ org.springframework.boot:spring-boot-dependencies:3.2.1, C:\Users\Administrator\.m2\repository\org\springframework\boot\spring-boot-dependencies\3.2.1\spring-boot-dependencies-3.2.1.pom, line 2781, column 19 @[ERROR] The build could not read 1 project -> [Help 1][ERROR][ERROR] The project org.springframework.samples:spring-petclinic:3.2.0-SNAPSHOT (C:\Users\Administrator\IdeaProjects\spring-petclinic\pom.xml) has 2 errors [ERROR] Non-resolvable import POM: The following artifacts could not be resolved: io.rsocket:rsocket-bom:pom:1.1.3 (absent): Could not transfer artifact io.rsocket:rsocket-bom:pom:1.1.3 from/to central (https://repo.maven.apache.org/maven2): C:\Users\Administrator\.m2\repository\io\rsocket\rsocket-bom\1.1.3\rsocket-bom-1.1.3.pom.16617097273503382256.tmp -> C:\Users\Administrator\.m2\repository\io\rsocket\rsocket-bom\1.1.3\rsocket-bom-1.1.3.pom @ org.springframework.boot:spring-boot-dependencies:3.2.1, C:\Users\Administrator\.m2\repository\org\springframework\boot\spring-boot-dependencies\3.2.1\spring-boot-dependencies-3.2.1.pom, line 2732, column 19 -> [Help 2][ERROR] Non-resolvable import POM: The following artifacts could not be resolved: org.springframework.restdocs:spring-restdocs-bom:pom:3.0.1 (absent): Could not transfer artifact org.springframework.restdocs:spring-restdocs-bom:pom:3.0.1 from/to central (https://repo.maven.apache.org/maven2): C:\Users\Administrator\.m2\repository\org\springframework\restdocs\spring-restdocs-bom\3.0.1\spring-restdocs-bom-3.0.1.pom.2597863818678506325.tmp -> C:\Users\Administrator\.m2\repository\org\springframework\restdocs\spring-restdocs-bom\3.0.1\spring-restdocs-bom-3.0.1.pom @ org.springframework.boot:spring-boot-dependencies:3.2.1, C:\Users\Administrator\.m2\reposiistrator\.m2\repository\org\springframework\boot\spring-boot-dependencies\3.2.1\spring-boot-dependencies-3.2.1.pom, line 2781, column 19 -> [Help 2][ERROR][ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.[ERROR] Re-run Maven using the -X switch to enable full debug logging.[ERROR][ERROR] For more information about the errors and possible solutions, please read the following articles:[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException[ERROR] [Help 2] http://cwiki.apache.org/confluence/display/MAVEN/UnresolvableModelException
-
미해결예제로 배우는 스프링 입문 (개정판)
./mvnw package 오류
혹시 이 오류는 어떻게 해결해야하나요?? [ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:3.1.2:test (default-test) on project spring-petclinic:[ERROR][ERROR] Please refer to C:\IdeaProject\spring-petclinic\target\surefire-reports for the individual test results.[ERROR] Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N].dump and [date].dumpstream.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링JdbcTemplete강의 내용 1:38초부분에서 의존성주입 질문이 있습니다
//JdbcTemplateMemberRepository public class JdbcTemplateMemberRepository implements MemberRepository { private final JdbcTemplate jdbcTemplate; public JdbcTemplateMemberRepository(DataSource dataSource) { jdbcTemplate = new JdbcTemplate(dataSource); //SpringConfig @Configuration public class SpringConfig { private final DataSource dataSource; public SpringConfig(DataSource dataSource) { this.dataSource = dataSource; } JdbcTemplate을 사용하도록 스프링 설정 변경하는 부분인데이전에 객체를 생성해서 직접 주입하면 안좋다고 하셨었는데jdbc템플릿을 적용하시는 부분에서는 직접 dataSource를 JdbcTemplate를 생성해서 넣으셨습니다.public SpringConfig(DataSource dataSource) { this.dataSource = dataSource; }대신에 JdbcTemplate를 빈에 등록해서 이렇게 사용하는게 이전에 배운내용에 따르면 의존성, 결합성 면에서 나은 코드라 생각했습니다.(@autowired를 사용하게끔 수정해본 코드)//JdbcTemplateMemberRepository public class JdbcTemplateMemberRepository implements MemberRepository { private final JdbcTemplate jdbcTemplate; @Autowired public JdbcTemplateMemberRepository(DataSource dataSource) { jdbcTemplate = new JdbcTemplate(dataSource); //SpringConfig @Configuration public class SpringConfig { private final DataSource dataSource; @Bean public JdbcTemplate jdbcTemplate(DataSource dataSource) { return new JdbcTemplate(dataSource); } } 이렇게 수정해서 사용하라고 설명해주시다가 이 JdbcTemplate강의에서는 직접 주입하시면서 설명해주셨는데,JdbcTemplate빈을 정의해서 주입하는 방식이 아닌Datasource를 직접 사용한 이유가 있을까요?뭔가 데이터접근할때는 다른부분이 있어서 이런 방법이 사용된건지 궁금합니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
orphanRemoval
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]orphanRemoval 개념을 설명할 때, 부모 엔티티와 자식 엔티티에 대해서 이야기 하셨는데 부모 엔티티와 자식 엔티티를 정하는 기준이 어떻게 되나요?다대일 개념에서 다쪽이 자식 엔티티이고 일쪽이 부모 엔티티가 되는건가요?
-
해결됨김영한의 실전 자바 - 중급 1편
섹션4-문제풀이2 로또 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 질문이 생겨서 질문을 남깁니다.문제 답안 풀이 나온 방법 말고 다른 방법으로 풀려고 하는데, 답이 나오는지 확인을 받고 싶어서 이렇게 질문을 남깁니다.compareTo로 해서 로또 번호가 잘나오는지 확인을 받고 싶네요. 계속 하는데 실패 해서요..어렵 네요..답변 부탁드립니다.
-
미해결김영한의 실전 자바 - 중급 1편
Object equals()에서 this의 타입
public class EqualsMainV1 { public static void main(String[] args) { UserV1 user1 = new UserV1("id-100"); // x001 UserV1 user2 = new UserV1("id-100"); // x002 System.out.println("equality = " + (user1.equals(user2))); // 동등성 비교: x001.equals(x002) } } public class UserV1 { private String id; public UserV1(String id) { this.id = id; } } public class Object { ... public boolean equals(Object obj) { return (this == obj); } ... }위 코드에서 'user1.equals(user2)'라는 부분이 잘 이해가 안 되는데요. UserV1에서 equals()를 오버라이딩하지 않았기 때문에 Object 클래스의 equals()가 호출됩니다.Object 클래스의 equals()의 매개변수에서는 UserV1 -> Object로의 자동 업 캐스팅이 발생하고 참조변수 obj는 Object 타입입니다. 그렇다면 this도 Object 타입이라는 것인데, UserV1 인스턴스가 생성될 때 내부에 Object도 함께 생성되는데 이 경우에서 Object 클래스의 this는 UserV1가 아닌 Object를 의미하는 건가요?(즉, Object 클래스의 equals()에서 this의 타입에 대해 질문드리고자 합니다.)
-
미해결김영한의 실전 자바 - 중급 1편
Object[] 참조변수에 Car[] 참조변수 대입
public class ObjectPolyExample2 { public static void main(String[] args) { Car[] cars = {new Car(), new Car(), new Car(), new Car()}; size(cars); } private static void size(Object[] objects) { ... } }Object[] 타입 참조변수에 Car[] 타입 참조변수를 넣는 것은 가능하지만 그 반대는 불가한 이유, 그리고 Object[] 타입 참조변수에 Car[] 타입 참조변수를 대입하면 어떻게 되는가에 대해 질문드리고자 합니다.제가 추측하기에는 자동 업캐스팅이 발생하기 때문이고, 이전에는 Car 타입으로 해석되었던 참조변수가 Object 타입으로 해석될 것이라 생각됩니다(객체 배열이니까 모든 객체에 대한 참조변수가 Car 타입 -> Object 타입으로 해석된다는 뜻).그리고 Car[] 타입 참조변수에 Object[] 타입 참조변수를 대입했을 때 컴파일 오류가 발생하는 이유는 업캐스팅은 자동으로 발생하지만 다운캐스팅은 자동으로 발생하지 않기 때문입니다. 저는 이렇게 추측했는데 틀린 부분 지적해주시면 감사하겠습니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
gradlew 빌드가 계속 실패로 뜹니다.
cmd 실행 시 위와 같은 오류가 계속 발생하고 있습니다.위와 같이 옵션을 인텔리제이 idea로 바꿨음에도 오류가 발생합니다.jdk 21이며, 환경변수 모두 세팅되어 있습니다. (java -version, javac -version) 테스트 리포트는 아래와 같습니다.
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
강의 자료
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]실수로 다운로드 소스를 연결해야하는데 수업자료를 연동시켰어요 그래서 한글이 떳던 거고요 ㅜㅜ 처음부터 삭제하고 다시 만들어야하나요 ?? java-start가 떠야하는데 저는 java-start-20240327이 뜹니다
-
미해결김영한의 실전 자바 - 기본편
상속에 따른 객체와 메모리 구조에 대해 질문드립니다.
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요. 이번 강의를 완강 하다가 궁금한 점이 생겨서 질문 드립니다.위 그림에 따라인스턴스가 생성되면 인스턴스에 있는 객체들의 메서드는 메서드 영역에서 공유되기 때문에 인스턴스가 100개여도 메서드가 100개가 되진 않는다고 설명 해주셨는데요.하지만 상속 단계에서 이 그림을 보면 메서드가 메서드 영역에 있는 것이 아니라 각각의 인스턴스가 각자의 메서드를 가지고 있는 것으로 보이는데 제가 이해한게 맞을까요? 제가 이해한 바로는 상속받는 부모 메서드 까지 포함해서 만약 인스턴스가 100개라면 메서드도 따라서 100개인지 궁금합니다. 바쁘신 와중에도 답변 주시면 감사하겠습니다!
-
해결됨김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
같은 결과가 나오는데, 제가 작성한 코드와 강사님이 작성한 코드 중에서 더 효율적인 것이 무엇인지, 아니면 미미할 정도의 큰 차이가 없기 때문에 상관없는지 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) 스캐너 강의 중 반복 예제 9분 경에 나오는 문제입니다.[질문 내용]package scanner;import java.util.Scanner;public class ScannerWhile3 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.println("0을 입력하기 전까지 정수를 입력하시오.");double sum = 0;while(true) {double doubleValue = scanner.nextDouble();if(doubleValue == 0) {System.out.println("모든 정수의 합: " + sum); break;}sum += doubleValue;}}
-
미해결김영한의 실전 자바 - 중급 1편
정적 중첩 클래스 관련 질문
1) 실무에서 정적 중첩 클래스를 사용하는 가장 큰 이유는협업하는 동료가 코드를 빨리 파악할 수 있도록 이라고 이해하면 될까요? 2) 1번 이유가 아니라면 어떻게 가장 많이 활용하나요?
-
미해결JSP 강의평가 웹 사이트 개발하기
드롭다운 에러 Uncaught TypeError: i.createPopper is not a function
드롭다운 실행 시 Uncaught TypeError: i.createPopper is not a function오류가 발생합니다 부트스트랩 코드 복붙해도 동일오류가 발생하네요ㅠㅠ
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
상품 도메인 요구사항 설계 중 의문점
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요 5. 상품 도메인 개발 수강 중 궁금한 점이 있어 글 올립니다!상품 도메인 비즈니스 요구사항에는 1. 상품 등록 2. 상품 목록 조회 3. 상품 수정 이 있는데 핵심 비즈니스 로직을 정의하는 클래스인 ItemService(상품 서비스 클래스)에서는 오직 1. 상품 등록 2. 상품 목록 조회 로직만 설계하신 것을 알 수 있었습니다.상품 리포지토리에서 상품 등록 로직(save(Item item))에 if - else 문을 통해 merge()가 3. 상품 수정 기능을 해서 상품 서비스 클래스에서 설계를 안 하신 걸로 봐도 될까요?
-
미해결김영한의 실전 자바 - 기본편
다형적 참조시에 생성자 호출 질문
Parent p = new Child(); 이런 형식으로 부모는 자식을 품을 수 있으니깐 저렇게 선언하면Child생성자도 호출이 되는 것 같더라고요. 메서드들은 오버라이딩이 된 것이 아닌 이상 자식 메서드를 사용할 수 없는데생성자는 생성시에는 자식도 호출이 된다고 생각해야하는걸까요?
-
해결됨김영한의 실전 자바 - 중급 1편
섹션 5. 문자열과 타입 안전성 1
마지막 return price * (discountPercent / 100); 이 무조건 0이 반환되는 이유가 뭔가요?예를들어 BASIC에 들어오면 discountPercent 에는 10의 값이 들어가고마지막에 price ( 10 / 100); 이 되는 거 아닌가요?ㅠㅠpublic int discount (String grade, int price) { int discountPercent = 0; if (grade.equals("BASIC")) { discountPercent = 10; } else if (grade.equals("GOLD")) { discountPercent = 20; } else if (grade.equals("DIAMOND")) { discountPercent = 30; } else { System.out.println(grade + "할인X"); } return price * (discountPercent / 100); }
-
해결됨김영한의 실전 자바 - 중급 1편
섹션 4. 문제와 풀이2
LotteGenerator 클래스에서private final Random random = new Random(); 에서이것만 final로 처리한 이유가 있을까요? import java.util.Random; public class LotteGenerator { private final Random random = new Random(); private int[] lotteNumbers; private int count; public int[] generate () { lotteNumbers = new int[6]; // 배열 6칸 생성 count = 0; while (count < 6) { // 1부터 45 사이의 숫자 생성 int number = random.nextInt(45) + 1; // number에 random 번호 넣기 // 중복되지 않는 경우에만 배열에 추가 if (isUnique(number)) { lotteNumbers[count] = number; count++; } } return lotteNumbers; } // 이미 생성된 번호와 중복되는지 검사 private boolean isUnique(int number) { for (int i = 0; i < count; i++) { if (lotteNumbers[i] == number) { return false; } } return true; } }