묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 핵심 원리 - 기본편
실행 오류 (무슨 오류인지 뭐가 잘못된건지 모르겠음)
아래는 제 구글 드라이브 주소입니다. (코드)https://drive.google.com/drive/folders/1m1-Fdx1zFzropf7p5dkOW1DehLh7Lz7w?usp=drive_linkCoreApplication 클래스를 실행시킬때 홈페이지 주소를 입력하면 ok라는 문구가 잘나오지만빌드창에는 로딩중 마크가 뜨고중단하면 오류가 주르륵 나오는데 내용을 번역하면 아마gradle 업데이트 같은게 안된것같습니다 혹시 번거롭겠지만 전체적으로 확인 한번만 부탁드려도될까요?아래는 오류 코드입니다Execution failed for task ':CoreApplication.main()'.> Build cancelled while executing task ':CoreApplication.main()'* Try:> Run with --stacktrace option to get the stack trace.> Run with --info or --debug option to get more log output.> Run with --scan to get full insights.> Get more help at https://help.gradle.org.Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.For more on this, please refer to https://docs.gradle.org/8.8/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.BUILD FAILED in 20m 45s3 actionable tasks: 2 executed, 1 up-to-date
-
해결됨김영한의 실전 자바 - 기본편
Student 이해 내용 확인
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]순서 :1. 결국 Student라는 클래스에다가 String name , int age, int grade 멤버변수를 넣어놓는다.2. 다른 클래스에서 데이터 타입형태로 Student로 넣을 수 있다.3. 이를 불러오기 위해서는 변수가 필요한데 그것이 student1이다.4. new Student()로 Student의 객체 생성과 동시에 변수 student1에 담아버린다. 5. 그렇게 되면 student1에는 주소(참조값)인 x001이 대입 된다.6. x001라는 주소에 찾아 들어간다.7. Student 객체 내에 있던, Student 클래스에서 정의 내렸던 멤버 변수인 String name, int age, int grade를 찾을 수 있게 된다.헷갈려서 질문 남깁니다. 제가 이해한 바가 맞나요? 혹시 틀린 부분이 있다면 수정 부탁드립니다..
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
인텔리제이 빨간색 표시
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]빨간색으로 표시되는 이유가 궁금합니다.
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
맥에서는 이런 화면이 뜨지 않아서요
맥으로 하고 있는데인트가 크다라는 문자가 안뜨네요 어떻게 크게 하죠
-
해결됨김영한의 실전 자바 - 중급 1편
String 클래스 - 비교에서 문자열 풀 질문
String 클래스 - 비교에서 문자열 풀 질문이 있습니다.문자열 리터럴의 경우 문자열 풀에 의해 str4 의 참조값은 //x003이 된다고 하셨는데, 이 경우에 str3과 str4가 같은 참조값을 가지게 되는데, 그럼 사이드이펙트가 생길 수 있나요? 근데 코드를 그냥 str3 = 'happy'로 바꾸면 바뀝니다. 왜 같은 참조값을 가지는데 동시에 변경이 안되는 것인가요? 동일한 참조값을 가지면 한쪽이 변경될 경우 다른 한쪽도 변경되어야하는 것 아닌가요..?ㅠㅠ 헷갈립니다...도와주세요ㅠpublic class StringEqualsMain1 { public static void main(String[] args) { String str1 = new String("hello"); //x001 String str2 = new String("hello"); //x002 System.out.println("new String() == 비교: " + (str1 == str2)); System.out.println("new String() equals 비교: " + (str1.equals(str2))); String str3 = "hello"; //x003 String str4 = "hello"; //x004 System.out.println("리터럴 == 비교 : " + (str3 == str4)); System.out.println("리터럴 equals 비교 : " + (str3.equals(str4))); } }
-
미해결김영한의 실전 자바 - 기본편
메서드 생성할 때
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.이전에는 메소드 생성시 public를 적고 static 을 적었는데 왜 이번 강의에서는 public을 적지 않고 바로 static으로 시작하나요? 무엇이 다른가요?
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
ArrayEx4 질문입니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]package array.ex; import java.util.Scanner; public class ArrayEx4 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int[] numbers = new int[5]; int total = 0; System.out.println("5개의 정수를 입력하세요: "); for (int i = 0; i < numbers.length; i++) { numbers[i] = scanner.nextInt(); total += numbers[i]; } System.out.print("입력한 정수의 합계: " + total); System.out.println(); double average = (double) total / numbers.length; System.out.println("입력한 정수의 평균: " + average); } }선생님이 풀어주신 코드랑은 다른데 제 코드도 답이 될수있는지 궁금합니다
-
해결됨스프링 핵심 원리 - 기본편
6장 컴포넌트 스캔 - 필터
안녕하세요.강의자료-탐색 위치와 기본 스캔 대상 탐색할 패키지의 시작 위치 지정 문단에서만약 지정하지 않으면 @ComponentScan이 붙은 설정 정보 클래스의 패키지가 시작 위치가 된다.라고 읽었습니다 아래 코드에서 질문있습니다.(필터 문단 예제)package hello.core.scan.filter; import org.assertj.core.api.Assertions; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.NoSuchBeanDefinitionException; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.FilterType; public class ComponentFilterAppConfigTest { @Test void filterScan() { ApplicationContext ac = new AnnotationConfigApplicationContext(ComponentFilterAppConfig.class); BeanA beanA = ac.getBean("beanA", BeanA.class); Assertions.assertThat(beanA).isNotNull(); org.junit.jupiter.api.Assertions.assertThrows(NoSuchBeanDefinitionException.class , ()->ac.getBean("beanB",BeanB.class)); } @Configuration @ComponentScan( includeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION , classes = MyIncludeComponent.class), excludeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION , classes = MyExcludeComponent.class) ) static class ComponentFilterAppConfig { } }위코드는 강사님이 써주신 코드와 일치하는 코드 입니다. 여기에서 @ComponentScan( includeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION , classes = MyIncludeComponent.class) 를 제외 했을때 즉 beanA를 포함 하는 코드를 지웠습니다. 그러면 아래와 같은 코드가 됩니다.package hello.core.scan.filter; import org.assertj.core.api.Assertions; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.NoSuchBeanDefinitionException; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.FilterType; public class ComponentFilterAppConfigTest { @Test void filterScan() { ApplicationContext ac = new AnnotationConfigApplicationContext(ComponentFilterAppConfig.class); BeanA beanA = ac.getBean("beanA", BeanA.class); Assertions.assertThat(beanA).isNotNull(); org.junit.jupiter.api.Assertions.assertThrows(NoSuchBeanDefinitionException.class , ()->ac.getBean("beanB",BeanB.class)); } @Configuration @ComponentScan( excludeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION , classes = MyExcludeComponent.class) ) static class ComponentFilterAppConfig { } } 위코드에서 org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'beanA' available 에러가 발생하는 이유가 궁금합니다.. 위 예제에서 @ComponentScan이 붙은 설정 정보 클래스와 beanA클래스는 같은 패키지 내에 있습니다. @ComponentScan이 붙은 설정 정보 클래스의 패키지가 시작 위치가 됨으로 같은 패키지 내에 존재하는 BeanA클래스 객체는 스프링빈으로 등록되는거 아닌가요?
-
미해결스프링 핵심 원리 - 기본편
싱글톤패턴 DIP 위반
[질문 내용]싱글톤 패턴 문제점에서 getInstance() 사용시 DIP를 위반한다고 하신 점이 이해가 잘 안가서 직접 구현해보았습니다. 제가 이해한 내용이 맞나요...? [구현 내용]싱글톤 객체의 의존성 주입에 관한 문제이므로, SingletonService에 주입한 SingletonRepository를 생성하였습니다.public class SingletonRepository { private static final SingletonRepository instance = new SingletonRepository(); public static SingletonRepository getInstance() { return instance; } private SingletonRepository(){} } SingletonService에 SingletonRepository 필드를 추가합니다.public class SingletonService { private SingletonRepository singletonRepository; ... }DIP를 지키기 위해선, DI를 해야합니다. 하지만 SingletonService에 의존관계를 주입할 수 있는 방법이 없습니다...생성자 주입 방법: 추가 객체 생성을 막기 위해 생성자를 막아놓았으므로 불가.필드 주입, setter 주입, 일반 메서드 주입: 스프링 기술, 순수 자바 코드로 주입 불가.클라이언트코드인 SingletonService가 SingletonRepository를 사용하기 위해 다음과 같이 구현체에 의존해야 합니다. public class SingletonService { private SingletonRepository singletonRepository = SingletonRepository.getInstance(); ... }따라서 순수 자바 코드로 싱글톤 패턴 구현 시 DIP를 위반합니다.
-
미해결김영한의 실전 자바 - 중급 2편
섹션 3. ArrayList - 제네릭2
안녕하세요!해당 파트 복습하다가 궁금증이 생겨 질문 드립니다!제네릭은 런타임 시점에 Object나 따로 지정한 상한선으로 변하기 때문에 생성자에는 사용하지 못 한다고 이해하고 있습니다.때문에 해당 배열도 Object 타입으로 선언한 것은 이해했는데요.여기서 궁금한 것은,해당 코드도 런타임 시에는 E가 Object로 바뀔텐데, 그럼 Object 타입으로 캐스팅되어서 반환되어야 하는 것이 아닌지 궁금합니다!혹시 메서드 선언부에 타입 매개변수가 있고 없고의 차이인 건가요?아니면 pdf 파일에는 나와있지 않지만, Main 함수에서 get 함수를 반환받을 때 거기서 자바가 E 타입으로 캐스팅해주는 건가요? <질문 정리>생성자 안에 있는 E 타입은 변하는데, 왜 get 함수 안에 있는 E 타입은 유지가 되는지 궁금합니다!
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
for문 조건식에서 `<=` 와 `==` 질문
[질문 내용]public static void main(String[] args) { int row = 5; for (int i = 1; i <= row; i++) { for (int j = 1; j <= i; j++) { //for (int j = 1; j == i; j++) System.out.print("*"); } System.out.println(); } }위의 예제를 보면 j == i 로 코드를 입력했을 경우, 1행 * 하나만 출력이 되고 그 다음은 출력이 되지 않습니다.j == i가 될 때까지 출력해라 라는 논리구조가 적용이 되지 않는 이유가 궁금합니다.만약 j == i 일 때만 출력해라 라고 한다면 별은 5행까지 하나씩 출력이 되어야 할 것 같은데 그렇게 되지 않기도 하구요.조언 부탁드립니다!
-
해결됨김영한의 실전 자바 - 중급 1편
Math클래스 메서드중 random,질문(추가 round 메서드도요)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 궁금증이 생겨서 질문을 남깁니다.Math 클래스중에 메서드에 있는 Math.radom()을 추적해 보니, Ranodm 클래스를 갖고 와서 쓰고 있다는 사실을 알수 있었습니다.Math클래스에 random()이라는 메서드를 집어 넣은 이유가 저가 생각 하기에는 random 이라는 것이 복잡하고, ocp원칙을 지키기 위해서, Math 클래스에 관계를 맺고 있다 라고 생각해도 될까요? 아니면 다른 이유가 있는 것인지 알고 싶습니다.추가 질문round() 메서드의 값을 예상햇을때 3.0이 나올줄 알았는데, 3이 나오고, long으로 값을 반환 한다는 것을 알 수 있었습니다.ceil(),floor() 메서드 들은 전부다 반환값이 double인데, rond() 메서드는 왜 long으로 반환하는지 알고 싶습니다.답변 부탁 드립니다.
-
미해결스프링 핵심 원리 - 기본편
NoUniqueBeanDefinition 예외
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요! 강의를 복습하는 도중에 다음 설정과 같이 intellij로 테스트를 실행하면 다음과 같이 NoUniqueBeanDefinition 예외가 나옵니다. 해당 설명을 보면 컴포넌트 스캔으로 등록된 MemoryMemberRepository와 AppConfig에서 등록된 MemoeyRepository 때문에 생성자 주입이 일어날때 어떤 것을 선택할지 몰라서 생기는 오류처럼 보입니다. 이를 해결하기 위해 커뮤니티 게시판을 살펴봤는데 다음과 같이 test 환경을 intellij idea가 아닌 gradle로 실행하면 된다고 하여 시도해보았더니 해결되었습니다. 그런데 이런 해결방법이 이해가 되지 않습니다. gradle과 intellj 무슨 차이가 있는지 궁금하고 gradle로 테스트하더라도 코드는 똑같이 분명히 똑같이 충돌이 일어날텐데 오류 없이 해결되는지 그 이유가 궁금합니다.
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
문제풀이 3 관련
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]문제풀이 3에서 마지막에 totalprice 변수를 초기화 하고 진행을 하는데, 혹시 변수 초기화 안하고 이렇게 작성해도 무방할까요? System.out.println(foodName + " " + foodQuantity + "개를 주문하셨습니다. 총 가격은 " + foodPrice * foodQuantity + "원입니다.");
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
자바의 컴파일
자바파일을.. 컴파일해서 .class로 만들면 어떤 운영체제에서 컴파일을 하든 모든 운영체제에서 .class가 돌아가는게 맞나요?아니면 컴파일을 할때 맞는 운영체제에서 먼저 컴파일을 해야하는건가요?
-
해결됨김영한의 실전 자바 - 중급 2편
System.out.println(set)의 시간 복잡성
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]이 코드에서 System.out.println(set)의 경우는 O(n)이 맞을까요?
-
미해결스프링 핵심 원리 - 기본편
CoreApplication 오류
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]강의 6:11 초 내용과 같이 CoreApplication 코드를 실행했는데 강사님과 다르게 아래와 같은 오류가 뜹니다.다른 코드들은 다 똑같이 작성하였는데 혹시 이 오류가 인텔리제이 무료 버전을 사용해서 생기는 오류인가요?
-
미해결스프링 핵심 원리 - 기본편
@PostConstruct 사용 목적
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]@PostConstruct를 사용하는 근본적인 이유는 빈 등록 이후에 빈 객체의 필드를 초기화 하기 위함인가요? 아래 코드와 같이 동작하는 것이 맞을까요?//빈으로 등록하자 마자 init() 메소드를 호출해서 repositoryName 초기화 @Repository public class DatabaseMemberRepository{ private String repositoryName; @PostConstruct public void init(){ this.repositoryName = "DatabaseMemberRepository "; } }만약 1번 내용이 맞다면 아래 코드처럼 @PostConstruct를 사용하지 않고 그냥 main 메소드에서 setter로 초기화 해도 같은 로직이라고 보면 될까요?public class Application { public static void main(String[] args) { ApplicationContext ac = new AnnotationConfigApplicationContext(DatabaseMemberRepository.class); final MySqlMemberRepository bean = ac.getBean(DatabaseMemberRepository.class); bean.setRepositoryName("DatabaseMemberRepository"); } }그럼에도 불구하고 @PostConstruct를 사용하는 이유는 빈으로 등록되고 @PostConstruct가 붙은 메소드가 자동으로 실행되므로 개발자가 실수로 필드 초기화를 까먹고 NPE 같은 오류가 발생하지 않도록 방지하기 위함인가요?
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
ArrayEx2 질문입니다 ㅠ
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]똑같이 따라했는데 저는 5까지 정수를 입력한 후에 출력이 안나오고 그 후로 뭘 더 입력하면 오류가 나와버려요 ...ㅠㅠ.
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
ScannerWhileEx3 에서 질문있습니다 !
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]조금 논외 질문이긴 하지만 while (true)로 무한루프를 돌려서 -1을 입력한 후 숫자들의 합계와 평균이 나오게 만들고나서도 프로그램이 종료가 안되고 다음 계산을 하는 형식으로는 어떤식으로 코딩을 할 수 있을까요? ㅠㅠex1234총합 10을 출력 후 그대로 이어서 프로그램이 종료가 되지않구 다음 숫자를 입력했을때 다시 이후부터 누적된 총합을 계싼하는 형식으로도 코딩이 가능할까요?그리구 아예 총합을 초기화 후 다시 출력하는 방식도 가능한지 궁금합니다 ...if로 넣어서 혼자 만들어보려고했는데 변수가 안만들어지는건지 계속 컴파일 오류가 떠서요 ㅠㅠ