관심쟁이 영호

[#5]조건문 본문

학교공부/자바의 왕!

[#5]조건문

관심쟁이 영호 2019. 6. 10. 22:10
반응형

안녕하세요 최고왕입니다.

 

최근에 일이 많아서 블로그에 글을 정말 오랜만에 올리게 되었어요 ㅠㅠ

 

오랜만에 올리는 만큼 설레요 ㅎㅎ

 

-----------------------------------------------------------------------------------------------------------------------------------

 

오늘은 조건문에 대해서 공부를 해볼 예정입니다.

 

조건문이라고 이야기하니까 영어 공부할 때의 문법공부가 생각이 나서 공부를 시작하기 전부터

 

하기가 싫은거 있죠.. ㅋㅋㅋㅋㅋ

그렇지만 공부를 해보니 재미가 있더라고요!

 

여러분도 재미를 느껴서 같이 이해를 했으면 좋겠어요ㅎㅎ

 

조건문 

 

먼저 조건문에 대해서 바로 말씀드리자면..

 

조건문은 컴퓨터에게 "이러한 상황(조건)일 때 이러한 일을 하여라!"라고 명령을 시키는 작업이에요!

 

조건문은 if, switch로 이루어져 있어요!

 

 

if문

 

먼저 if문은

 

if(조건식) {

    조건이 맞을 때 컴퓨터가 수행할 일

}

 

이렇게 구성이 됩니다!

 

실제로 조건식은 정말 많이 사용된다고 하는데요.

 

나중에 우리도 이러한 조건문을 잘 사용하기 위해선 지금 제대로 공부를 해놓는 게 편할 거 같아요!

 

(조건식)

 

이 부분은 boolean타입으로 확인을 하는데 조건식의 결괏값이 true일 때 컴퓨터가 수행할 일을 해요!

 

만약 false의 결괏값을 내놓는다면 컴퓨터는 if문을 수행하지 않고 바로 넘어간다고 해요

 

그럼 제가 간단하게 코드를 짜 보겠습니다.

 

if(1 + 1 == 2){

    System.out.println("맞는 문장입니다.");

}

 

이렇게 했을 때 조건식의 부분은 참이니까 컴퓨터는 "맞는 문장입니다."를 출력하게 되겠죠!

 

정말 쉽죠~?

 

여기서 조금 더 응용을 하여 논리 연산자를 사용할 수가 있어요!

 

int x = 10;

 

if(x == 9 || x == 10){

    System.out.prinln("맞습니다.")

}

 

제가 이렇게 구성하였는데요.

 

||는 논리 연산자로 두 개의 논리 중 하나만 정답이면 true의 값을 도출합니다.

 

x == 9는 false이지만 x == 10는 true 이므로

 

조건식은 결과적으로 true의 값을 내게 됩니다.

 

그러므로 컴퓨터는 "맞습니다"라는 글을 출력하게 되겠죠!

 

if문을 여러 개 중첩할 수도 있어요!

 

예를 들면.

 

이럴 땐 이렇게 해라

이럴 땐 이렇게 해라

이럴 땐 이렇게 해라

 

라구요!

 

그것을 컴퓨터가 알아볼 수 있게 적으면

 

if (조건식){

    수행할 일 1

} else if (조건식){

    수행할 일 2

} else if (조건식){

    수행할 일 3

} else {

    아무것도 해당되지 않을 때의 수행할 일

}

 

이렇게 써볼 수 있습니다!

 

보면 if조건문의 연장선이라고 볼 수 있어요 ㅎㅎ

 

switch문 

 

switch문은 if문의 불편한 점을 보안하기 위해서 나온 거라고 볼 수 있어요!

 

if문은 참과 거짓, 두 가지만 있어서 경우의 수가 많아지면 else - if를 계속적으로 추가해줘야 해서 복잡해져요 ㅠ

 

이럴 때 switch문을 사용해요!

 

switch문을 한번 살펴보도록 할게요!

 

switch(조건식) {

    case 값 1 :

 

    break;

 

    case 값 2 :

  

    break;

 

    default : 

 

switch문은 이렇게 구성되는데요!

 

조건식의 결과 값이 값 1과 같으면 값 1의 case를 수행하고

 

값 2와 같으면 값 2의 case를 수행하게 돼요!

 

break은 case를 구분해주는 것이라고 할 수 있어요!

 

break이 없다면 컴퓨터가 case를 구분하지 못하게 됩니다!

 

switch를 한번 제가 임의로 만들어 보겠습니다.

 

int level = 2;

 

switch (level) {

    case 3 :

        grantDelete();

    case 2 :

        grantWrite();

    case 1 :

        grantRead;

}

 

이렇게 쓸 수가 있어요! 

 

일부로 break을 빼서 각 case마다 구분을 없애주었어요.

 

그렇게 했기 때문에 level이 높으면 레벨이 낮은 부분의 기능까지 수행하게 되는 거죠!

 

 

-----------------------------------------------------------------------------------------------------------------------------------

 

오늘은 여기까지만 공부를 해보겠습니다!!

 

이전에 배웠던 것들과는 비교적으로 어려운 것이라서 여러분들이 보기에 힘드실 수도 있고

(제가 설명을 잘 못하는 것도 있고..)

 

쉬웠을 수도 있어요! 

 

오늘은 조건문에 대해서 발만 담갔다고 볼 수 있겠네요 ㅎㅎ

 

조건문에 대해서는 제가 좀 더 자세히 글을 올리도록 하겠습니다!

 

오늘도 최고왕의 글을 읽어주셔서 정말 정말 감사드려요!

 

글의 내용 중에 잘못된 정보가 있다면 언제든지 댓글로 말씀주시면 감사하겠습니다!!

 

모두 모두 행복한 날이 되길 빌어요! 파이팅팅

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

300x250

'학교공부 > 자바의 왕!' 카테고리의 다른 글

안녕하세요 최고왕입니다.  (0) 2019.10.28
[#6]반복문  (0) 2019.06.22
[#4 연산] 컴퓨터에게 일을 시켜보자  (1) 2019.05.14
[#3] 변수란?  (0) 2019.05.13
[#2.1 자바보충] 짚지못한 부분!  (0) 2019.05.13
Comments