2025/03/10 6

Java 필드와 메서드의 차이: 배열.length vs String.length()

length 메소드에 대해서, String 에서는 length() 였는데, 배열에서는 () 가 없이 그냥 length 더라고. 왜 그런거야? String[] testArr = new String[3]; for(int i = 0; i } String test = "test"; for(int i = 0; i }ChatGPT의 말:좋은 질문이야! String과 배열에서 length를 다르게 사용하는 이유는, String은 클래스이고, 배열은 기본적으로 제공되는 데이터 타입의 일부이기 때문이야.🔍 1. String.length()String은 **클래스(class)**야. 따라서 length는 메서드로 제공돼. length()는 String 객체 내부에서 호출되며, 문자열의 길..

반복문의 무한루프, 어떤 경우에 사용하며 최적화 방법은?

반복문에서 무한루프를 돌려야 하는 경우는 뭐가 있을까? 에듀테크 회사에서 실무에서 무한루프를 이용하는 경우는 뭐가 있을까?ChatGPT의 말:반복문에서 무한 루프를 돌려야 하는 경우무한 루프(무한 반복문)는 특정 조건이 충족될 때까지 프로그램이 계속 실행되어야 하는 경우에 사용됩니다. 실무에서 무한 루프를 돌리는 대표적인 사례는 다음과 같습니다.서버 프로세스 (웹 서버, 게임 서버 등)java코드 복사while (true) {    Socket client = serverSocket.accept(); // 클라이언트 요청 대기    handleClient(client);} IoT 센서 데이터 수집 및 모니터링 시스템java코드 복사while (true) {    double temperature = re..

중첩 반복문 (for - for)에서 생긴 궁금증 - 최적화, 효율, 실무 활용도의 관점

for(int i = 0; itest.length();i++) { for(int j=i+1; jtest.length(); j++) { if(test.charAt(j)==test.charAt(i)) { result = "있음"; break; } } if(result.equals("있음")) break; }첫번째 중복for문에는 test.charAt(j) == test.charAt(i) 에서 비교할 때 test.charAt(i)를 계속 들여다보고 있다. for(int i = 0; itest.length();i++) { char target = test.charAt(i); for(int j=i+1; jtest.length(); j++) { if(test.cha..

switch는 조건문인데 반복문이기도 한건가?

switch는 반복문인가? switch는 조건문이라고 배웠다.그런데 break; 는 반복문을 멈추는 용도라고 배웠는데, switch도 break; 를 사용한다. 그러면, switch는 반복문이기도 한건가? 그렇다면, 그게 어떤 의미인건가? 아니요, switch는 반복문이 아닙니다. switch는 조건문(제어문) 입니다. 하지만 switch에서도 break;를 사용하는데, 이것이 헷갈리게 만든 것 같네요.break;의 의미는 상황에 따라 다릅니다.반복문에서의 break;예시: java코드 복사for (int i = 0; i     if (i == 5) {        break; // 반복문 종료    }    System.out.println(i);} 결과: 코드 복사01234 switch에서의 brea..

자바 반복문과 제어문 완벽 정리: for, while, switch, break, continue 그리고 랜덤값 활용

배운 내용 정리:이번 학습에서는 자바의 반복문과 제어문을 깊이 있게 다루었다. 기본적인 for문, while문, do-while문을 활용한 다양한 예제들을 실습했으며, 반복문을 제어하는 break와 continue의 동작 방식도 함께 살펴보았다. 또한, switch문과 break의 관계 및 레이블을 활용한 break 문법까지 익혔다. 마지막으로 Math.random()과 Random 클래스를 활용한 난수 생성 방법도 배웠다.📌 1. 기본 for문과 활용for문을 이용하여 고정된 횟수만큼 반복 수행하는 방법을 익힘.i 값을 활용하여 특정 규칙을 가진 값들을 출력하는 예제를 실습함.문자열에서 각 문자를 하나씩 가져오는 방법도 학습함.for문 내부에서 변수를 선언하면 반복될 때마다 새롭게 생성된다는 점도 확..

배열의 인덱스는 왜 0부터 시작할까? + 참조값의 비밀

배열에서 인덱스가 0부터 시작하는 이유는 여러 가지가 있지만, 가장 핵심적인 이유는 메모리 주소 계산의 효율성 때문이야.1. 포인터와 오프셋 개념배열은 메모리에서 연속된 공간을 차지해. 프로그래밍 언어에서 배열의 첫 번째 요소를 가리킬 때, 기본적으로 배열의 시작 주소를 사용해. 예를 들어, arr이라는 배열이 있다고 하자.c복사편집int arr[5] = {10, 20, 30, 40, 50}; 이 배열에서 arr[0]은 배열의 시작 주소(BASE_ADDRESS)에서 0칸 이동한 위치에 있어. 즉, arr[i]의 메모리 주소를 계산할 때:주소=BASE_ADDRESS+i×ELEMENT_SIZE\text{주소} = \text{BASE\_ADDRESS} + i \times \text{ELEMENT\_SIZE}주..