[TIL] 사전캠프 12일차 _ Java #2

Seoyeon Lee·2025년 9월 23일

Today I Learned ...

🖥️ Java #2

오늘은 맥북에 Homebrew를 설치해서 자바 실습 환경을 만들었다.

앞선 포스트에 올린 것처럼 자바 실습을 위해서는 JDK가 필요한데,
오라클에서 지원해주는 OracleJDK와 오픈 소스로 제공되는 OpenJDK가 있다.
내가 참고한 유튜브 나도코딩에서는 OpenJDK 버전 8을 사용했고, IntelliJ를 활용해 실습을 진행했다.

JDK 다운로드 및 실습 환경 세팅 방법은 노션을 통해 정리해두었다.
Notion 확인하기


오늘은 자바 걷기반 퀘스트를 풀기 위해서 여러가지 제어문을 공부했다.

첫 번째는 if이다.
if문은 총 4가지의 형태로 사용할 수 있다.

// 방법 1 : if만 사용 (조건이 1개일 때)
if ([조건])
	[명령문]

// 방법 2 : if + else (조건이 1개일 때)
if ([조건])
	[명령문]
else
	[명령문]

// 방법 3 : if + else if (조건이 2개 이상일 때)
if ([조건1])
	[명령문]
else if ([조건2])
	[명령문]
else if ([조건3])
	[명령문]
    
// 방법 4 : if + else if + else (조건이 2개 이상일 때)
if ([조건1])
	[명령문]
else if ([조건2])
	[명령문]
else if ([조건3])
	[명령문]
else
	[명령문]

위와 같이 if, else, else if를 사용할 수 있는데,
else if는 여러번 사용이 가능하지만, else는 마지막에 한 번만 사용이 가능하다.
만약, 사용하려는 명령문이 2개 이상인 경우, {중괄호}를 사용하여 명령문을 묶어주면 된다.

두 번째는 switch case이다.
switch case도 케이스에 따라 나눠주지만, 하나의 조건에 따른 값이 다를 때 사용한다.

switch ([조건]) {
	case [1]: [명령문]
		break; // switch문을 빠져나가게 함
	case [2]: [명령문]
		break;
	...
	default: [명령문] // 모든 경우를 만족하지 않는 경우, 'default'는 생략 가능
}

위와 같이 조건을 작성하고, 조건의 값에 따라 다른 명령문을 지정해주는 것이다.
break는 각 case문의 영역을 구분해주는 역할을 한다.
그래서 여러 케이스에 동일한 명령문을 사용하는 경우라면, break를 생략해서 사용하기도 한다.

세 번째는 반복문인 for이다.

for ([선언]; [조건]; [증감])
	[명령문] // 명령문이 여러개라면 {} 사용

for (int i = 0; i < 5; i++)와 같이 정수형 변수 i에 대해 선언을 하고 0으로 초기화를 해주면,
i가 5보다 작다는 조건을 만족하는 동안 반복문 내의 명령문을 실행해주는데,
한 번의 실행이 완료되면 i의 값을 1씩 증가해서 다음 차례를 진행한다.

네 번째는 또 다른 형식의 반복문인 while이다.

while ([조건])
	[명령문] // 2개 이상인 경우 {} 사용

while을 사용할 때에는 선언은 while문 밖에서 진행하고, 명령문 안에 증감을 포함시켜주어야 한다.

다음은 while과 비슷한 do while이다.

do
	[명령문] // 명령문이 2개 이상인 경우 {} 사용
while ([조건]);

while과 비슷한 모양이지만, 서로 다른 방식으로 진행된다.
while은 조건에 만족하지 않는다면 명령문을 아예 실행하지 않는다면
do while은 일단 명령문을 한 번 실행한 후, 조건에 만족한다면 다시 명령문을 실행한다.

이 반복문들은 중첩해서 사용할 수도 있고,
break를 사용해서 반복문을 탈출하게 만들 수도 있고,
continue를 사용해서 해당 조건에 반복문을 건너뛰게 만들 수도 있다.

자세한 내용과 실습은 노션을 통해 정리해두었다.
Notion 확인하기


🙃 오늘의 느낀점

어제까지는 실습 없이 개념만 정리하며 진행해서 재미가 없었다.
어제 다른 팀원분들의 이야기를 듣고 오늘은 나도코딩의 9시간짜리 강의를 들어봤는데, 개념만 빠르게 정리하는 것이 아니라 실습과 함께 진행하고 있어서 재미있었다.
빨리 마스터해서 무언가를 만들어보고 싶다.

profile
백엔드 개발자 지망생

0개의 댓글