-
<프로그래밍 공부 시작하기-9>자바 공부 시작하기 <동안에, for>프로그래밍 2020. 4. 2. 10:20
이번 글은 자바의 for 에 대해 다룰 것이다.
이번 글은 자바의 for 에 대해 다룰 것이다.
이번 글은 자바의 for 에 대해 다룰 것이다.
이번 글은 자바의 for 에 대해 다룰 것이다.
이번 글은 자바의 for 에 대해 다룰 것이다.
이번 글은 자바의 for 에 대해 다룰 것이다.
이번 글은 자바의 for 에 대해 다룰 것이다.
이번 글은 자바의 for 에 대해 다룰 것이다.
이번 글은 자바의 for 에 대해 다룰 것입니다. 위에 8개의 문장은 오타가 아니다. 여러 번 강조하고 싶어서 8번을 썼다. 만약 우리가 컴퓨터에 위와 같은 문장을 8번쓰고 싶다면 어떻게 코드를 만들면 될까? 이제부터 살짝 유식한 것처럼 보이기 위해 코드를 만드는 작업을 코딩한다고 표현하겠다.
다시 내용으로 돌아와서, 위의 문장처럼 8번 같은 문장을 보여주고 싶다면 어떻게 코딩하면 될까? 굉장히 쉽다.
System.our.print("이번 글은 자바의 for 에 대해 다룰 것이다."); System.our.print("이번 글은 자바의 for 에 대해 다룰 것이다."); System.our.print("이번 글은 자바의 for 에 대해 다룰 것이다."); System.our.print("이번 글은 자바의 for 에 대해 다룰 것이다."); System.our.print("이번 글은 자바의 for 에 대해 다룰 것이다."); System.our.print("이번 글은 자바의 for 에 대해 다룰 것이다."); System.our.print("이번 글은 자바의 for 에 대해 다룰 것이다."); System.our.print("이번 글은 자바의 for 에 대해 다룰 것이다.");
이렇게 작성하면 위와 같이 나오게 할 수 있을 것이다. 그렇다면 이런건 어떨까?
"2020년 1월 1일"
"2020년 1월 2일"
"2020년 1월 3일"
"2020년 1월 4일"
"2020년 1월 5일"
"2020년 1월 6일"
"2020년 1월 7일"
"2020년 1월 8일"
"2020년 1월 9일"
"2020년 1월 10일"
...
"2020년 1월 31일"
글 쓰는데도 정말 귀찮았다. 위처럼 31개의 문장을 쓰라고 하면 이조차도 위에 코딩한 것처럼 31개의 print 를 쓸 것인가?
for 문은 이 귀찮음에서 시작한 문법이다.
우리는 초중고 영어 시간에 아래와 같은 문장을 배우곤 했다.
I've been working as a developer for 6 years
구글번역기에 넣고 돌리면 "저는 개발자로 6 년간 일해 왔습니다." 라는 뜻임을 알 수 있다.
영어에서는 6년간이라는 기간을 표현하고 싶을 때, for 라는 단어를 사용하고 있다.
자 그럼, for 라는 단어를 이용해서 위처럼 단순 반복되거나, 규칙이 뻔히 보이는 것들에 대해 반복해서 쓰지 않고 간단하게 표현할 수 있는 방법이 뭐가 있을까 생각해보자. 어떻게 표현하면 반복되는 문장을 단순하게 써서 여러번 반복시킬 수 있을까?
그 고민의 산물로 나온 것이 자바의 for 문이다. 뭐 이리 복잡하게 만들어놨어? 할 수 있지만, 잘 생각해보면 이 방법이 나쁘지 않다.
for(int i = 1; i < 9; i++) { System.out.println("반복할 문장"); }
와... 갑자기 뭔가 엄청 복잡해진 느낌이다. 프로그래밍이라는 것에 첫 벽을 만났다고 생각할 수 있다. 나도 머리가 그리 좋지 못해서인지 처음 for 문을 보고 굉장히 당황했다. 다행인 것은 개발자로 일하고 있는 지금은 for 을 보고 당황하지는 않는다. 글을 읽고 있는 사람도, 나처럼 머리가 좋지 못해도 천천히 보면 별 내용은 없다.
for 라는 단어뒤에 괄호 () 가 있고, 그 뒤에 중괄호{} 로 이루어진 구조다.
대충 쓱 보면 알겠지만 괄호() 안에는 뭔가 반복 숫자에 대한 것이 있고, 중괄호{} 에는 반복할 자바 명령어가 있다.그렇다. 우리가 지금 궁금한 건 괄호() 안에 있는 내용이다.
위에 나온 괄호() 안에는 이렇게 써있다.
(int i = 1; i < 9; i++)
하나씩 따라가보자. 첫번째는 세미콜론 ; 은 우리가 말할 때 마침표와 같다.
세미콜론 ; 을 기준으로 세덩어리로 나눌 수 있다.
int i = 1;
i < 9;
i++
두번째는 보이는대로 읽어보자.
int 를 통해 i 라는 기억창고에 1 을 넣을꺼야. 기억해.
i 에 있는 숫자가 9보다 작아.
i 더하기 더하기
자 이 for 문은 다음과 같이 말하는 문장이다.
1부터 시작해서 9보다 작을 때까지 계속 반복해. 1씩 증가시켜.
헷갈리는 느낌과 알 것 같은 느낌이 반복될 것이다. 그게 맞다. 처음부터 바로 이해하면 당신은 프로그래밍 천재이거나 어디선가 비슷한 개념을 경험해본 것이다. 그 애매한 이해 안되는 느낌을 가지고 이 글을 여러 번 읽어보자. 그 다음 쿨하게 넘어가라. 내 글들을 읽고 나서 자바 기본서를 볼 때 for 를 보면 반갑게 맞이할 수 있을 것이다.
반응형'프로그래밍' 카테고리의 다른 글
<프로그래밍 공부 시작하기-10>자바 공부 시작하기 <마무으리> (0) 2020.04.03 <프로그래밍 공부 시작하기-8>자바 공부 시작하기 <만약에, if> (0) 2020.04.01 <프로그래밍 공부 시작하기-7> 자바 공부 시작하기 <자바 실행해보기> (0) 2020.03.31 <프로그래밍 공부 시작하기-6> 자바 공부 시작하기 <기억창고, 변수> (0) 2020.03.30 <프로그래밍 공부 시작하기-5> 자바 공부 시작하기 <가장 간단한 프로그램, hello world> (0) 2020.03.27