총 10분 중 11분
2001
시즌 2개, 그리고 영화
시즌 2:
5화
“아일랜드”
출연: 이나영, 김민준, 김민정, 현빈
장르: 애초에 역경을 딛고 이룩하는 숭고한 사랑이란 없다. 그 역경 자체가 사랑이다.
프로그램 특징: 그 곳에서 살아남는 사랑이 어떤 모습으로 걸어오는지 기다려 보고 싶다.
장르: 애초에 역경을 딛고 이룩하는 숭고한 사랑이란 없다. 그 역경 자체가 사랑이다.
프로그램 특징: 그 곳에서 살아남는 사랑이 어떤 모습으로 걸어오는지 기다려 보고 싶다.
회차
-
[Java] for 중첩 루프에서 continue가 어디까지 영향을 미치는지0530분while, for, switch 문 내에서 continue의 동작 범위가 어디까지 인지, 그리고 자주 혼동되는 케이스인 switch 문과의 관계에 대해서도 살펴본다. 기본 개념: continue는 루프 제어문continue는 루프의 다음 반복으로 건너뛰는 제어문이다. 즉, 아래 구조에서 continue는 for 또는 while 루프의 현재 반복을 종료하고 다음 반복으로 진행한다.for (int i = 0; i 출력 결과:0134 switch안에서 continue? → 컴파일 에러while (true) { switch (x) { case 1: continue; // 컴파일 에러 발생 }} continue는 루프 제어문 전용이다. switch는 루프가 아니기 때문..
-
이것이 자바다(3판) 9장 익명객체 풀다가 new와 final을 이해하기 위해 JVM 메모리 동작 공부0425분7. 다음 Chatting 클래스는 컴파일 에러가 발생합니다. 원인을 설명해보세요.public class Chatting { class Chat { void start() {} void sendMessage(String message) {} } void startChat(String chatId) { String nickName = null; nickName = chatId; Chat chat = new Chat() { @Override public void start() { while(true) { String inputData = "안..
-
[JAVA] 이것이 자바다(3판) 7장 상속 확인문제 답안0423분6. Parent 클래스를 상속해서 Child 클래스를 다음과 같이 작성했는데, Child 생성자에서 컴파일 에러가 발생했습니다. 그 이유와 해결 방법을 설명해보세요.public class Parent { public String name; // 매개변수가 있는 생성자 public Parent(String name) { this.name = name; }}public class Child extends Parent { public int studentNo; public Child(String name, int studentNo) { this.name = name; this.studentNo = studentNo; }..
-
[JAVA] 객체지향의 꽃: 클래스0417분OOP 프로그래밍이 뭘까요?Object-Oriented Programming 에서 Object는 데이터(필드)와 메소드를 하나로 묶어서 사용하겠다는 개념입니다.Encapsulation → 정보 보안Inheritance → 유지보수 용이Polymorphism → 클래스 형변환: 실무에서 많이 사용 클래스 기본 구조 field, method, Constructor필드와 메소드는 선택적으로 가질 수 있다. public class Car { String company = "현대자동차"; String model; String color; int maxSpeed; // 생성자 선언하지 않으면 자동 선언된다. // 선언한 경우에는 필요한 경우에 대한 선언자를 만들어줘야 한다. Car(..
-
[JAVA] 이것이 자바다(3판) 6장 20번 답안0417분20. 키보드로부터 계좌 정보를 입력받아 계좌를 관리하는 프로그램입니다. 계좌는 Account 객체로 생성되고 BankApplication에서 길이 100 Account[] 배열로 관리됩니다. Account.classpackage ThisisJAVA.ch06.bank;public class Account { static final int MIN_BALANCE = 0; static final int MAX_BALANCE = 1000000; String accountNum; String accountOwner; int balance, withdraw, deposit; Account(String accountNum, String accountOwner, int deposit) ..
-
[JAVA] 참조형 : 배열 초기화, 복사0416분Data TypePrimitive TypeReference Type정수 실수논리ArrayEnumClassInterfacebytecharshortintlongfloatdoubleboolean 참조형에서 가장 많이 사용되는 배열을 보자. 배열은 마지막 인덱스에 length를 가진다. 배열은 크기가 정해지면 변경할 수 없다. 배열명(배열 변수:scores)는 stack에 저장되어 heap 영역에 생성된 배열을 참조하는 방식으로 이용한다. 배열 변수(scores)는 힙 영역의 배열 주소를 저장한다. 따라서 인덱스로 접근할 수 있다.배열 내부는 같은 type 값으로 관리하나, 해당 배열이 가리키는 주소의 객체 타입은 다를 수 있다. 배열 초기화// 정적 초기화String season = {"Spring", ..
-
[JAVA] 이것이 자바다(3판) 5장 9번 답안0415분9. 키보드로 학생 수와 각 학생들의 점수를 입력받고 최고 점수 및 평균 점수를 출력하는 코드를 작성해보세요.package ch05.referenceType;import java.util.Scanner;public class Chap5 { public static void main(String[] args) { boolean run = true; Scanner sc = new Scanner(System.in); int studentNum = 0; Integer[] scoreList = null; int max = 0; int total = 0; while (run) { System.out.pr..
-
[cpp] 복사 생성자1113분복사생성자 copy constructor생략 시 컴파일러가 자동 생성해주지만 클래스 내부에서 메모리 동적 할당 및 해제하고 이를 멤버 포인터로 관리하는 경우 직접 선언해야 한다.이를 이해하기 위해선 Pass by value의 선행 이해가 필요하다.다른 함수의 매개변수로 사용되는 경우 Call by value 로 전달된다. 호출 함수 스택에 따로 메모리를 할당해 객체의 복사된 값을 전달되는 형태인데 이를 복사 생성자라고 생각하면 된다.Myclass(const Myclass &rhs)// :m_data(rhs.m_data) { this -> m_data = rhs.m_data; cout a 를 복사의 원본으로 rhs가 a를 참조하는 형태 원본을 복사하는 형태기 때문에 멤버 m_data 두 ..
-
[Template] Class template1018분함수 템플릿과 클래스 템플릿템플릿을 함수에서 사용할 수 있고 클래스에서 사용할 수 있다. 둘 다 틀 로 사용하는 것인데 함수 수준에서 클래스 수준으로 확대된 것만 다르다.템플릿템플릿은 overloading에서 함수를 특정 사용 매개변수, 반환 형식에 따라 여러 번 작성해줘야 한다는 불편함을 위해 효율적인 메모리와 시간 관리를 위해 나온 개념이다.// function template template tem function(tem arg){ std::cout class SortedType {private: ItemType data[MAX_ITEMS]; int length;public: SortedType(); void insertItem(ItemType value); bool f..
Computer Science/Object Oriented Programming
[Java] for 중첩 루프에서 continue가 어디까지 영향을 미치는지
728x90
반응형
while, for, switch 문 내에서 continue의 동작 범위가 어디까지 인지, 그리고 자주 혼동되는 케이스인 switch 문과의 관계에 대해서도 살펴본다.
기본 개념: continue는 루프 제어문
continue는 루프의 다음 반복으로 건너뛰는 제어문이다. 즉, 아래 구조에서 continue는 for 또는 while 루프의 현재 반복을 종료하고 다음 반복으로 진행한다.
for (int i = 0; i < 5; i++) {
if (i == 2) continue;
System.out.println(i);
}
출력 결과:
0
1
3
4
switch안에서 continue? → 컴파일 에러
while (true) {
switch (x) {
case 1:
continue; // 컴파일 에러 발생
}
}
continue는 루프 제어문 전용이다. switch는 루프가 아니기 때문에, 내부에서 continue를 쓰면 컴파일 에러가 발생한다.
- 만약 switch를 루프 내에서 사용해야 하고, 루프 자체를 건너뛰고 싶다면, switch 바깥에 continue를 둬야 한다.
- break는 switch 내에서만 영향을 가진다.
중첩 루프에서의 continue는 어디에 적용될까?
int cnt = 0;
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
if (j == 1) continue;
}
cnt++; // 항상 실행됨
}
System.out.println(cnt); // 출력: 3
continue는 가장 가까운 루프 하나만 영향을 준다.
위 예제에서 continue는 내부 for (int j...) 루프만 건너뛴다.
바깥 루프인 for (int i...)의 cnt++는 정상적으로 매번 실행된다.
확장: labeled continue
복잡한 중첩 루프에서 바깥쪽 루프를 건너뛰고 싶다면, 라벨을 이용한 continue를 사용할 수 있다.
outer:
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
if (j == 1) continue outer;
}
cnt++; // 이 부분은 j == 1일 때 건너뛰게 됨
}
구문 | 작동 | 설명 |
switch 내에서 continue | ❌ | 컴파일 에러 발생 |
중첩 루프에서 내부 루프에 continue | ✅ | 가장 가까운 루프만 건너뜀 |
continue 이후 바깥 루프의 코드 | ✅ | 루프 한 바퀴가 끝난 뒤 실행됨 |
바깥 루프를 건너뛰고 싶을 때 | ✅ | labeled continue 사용 |
728x90
'Computer Science > Object Oriented Programming' 카테고리의 다른 글
이것이 자바다(3판) 9장 익명객체 풀다가 new와 final을 이해하기 위해 JVM 메모리 동작 공부 (1) | 2025.04.25 |
---|---|
[JAVA] 이것이 자바다(3판) 7장 상속 확인문제 답안 (0) | 2025.04.23 |
[JAVA] 객체지향의 꽃: 클래스 (2) | 2025.04.17 |
[JAVA] 이것이 자바다(3판) 6장 20번 답안 (0) | 2025.04.17 |
[JAVA] 참조형 : 배열 초기화, 복사 (0) | 2025.04.16 |
2025:05:30
Computer Science/Object Oriented Programming
[Java] for 중첩 루프에서 continue가 어디까지 영향을 미치는지