반응형

[Oracle Java Tutorial을 읽고 순서에 의해 정리한 후 본인의 경험과 이해를 바탕으로 작성된 글임을 밝힌다.]

[Java Tutorial, 자바 프로그래밍 기초 배우기, Java Programming, 자바 튜토리얼]

이번 포스팅은 자바 프로그래밍(Java Programming)의 제어 흐름 구문에 대해 알아본다. 꼭 자바에서만 사용되는 건 아니다. 프로그래밍 언어라면 당연히 있는 문법이다. 반드시 꼭 알아야 하는 구문이므로 잘 이해해서 사용하길 바란다.

2019/06/25 - [Software/Java] - [Java_Tutorial]14강-자바 코딩, switch 제어문[Control Flow Statements, 자바 프로그래밍 기초 , 자바 튜토리얼]

 

[Java_Tutorial]14강-자바 코딩, switch 제어문[Control Flow Statements, 자바 프로그래밍 기초 , 자바 튜토리얼]

[Oracle의 Java Tutorial을 읽고 순서에 의해 정리한 후 본인의 경험과 이해를 바탕으로 작성된 글임을 밝힌다.] [Java Tutorial, 자바 프로그래밍 기초 배우기, Java Programming, 자바 튜토리얼] 2019/06/25 - [..

tiboy.tistory.com

제어 흐름 구문(Control Flow Statements)

여러분들이 구현한 자바(Java) 소스는 일반적으로 작성한 순서대로 위에서 아래로 실행된다. 하지만 제어 흐름 구문을 사용하면 건너뛰기도 가능하고 반복적으로 순환도 되며 특정 위치로의 이동도 가능하다. 즉 프로그램을 구현하기 위해 필수 문법 중 하나이다. 자바에서 제어 흐름 구문의 종류는 조건문(if-then, if-then-else, switch), 반복문(for, while, do-while) 그리고 분기문(break, continue, return)가 있다. 그럼 하나씩 이해하고 예제를 통해 사용법을 익혀 본다.

whiledo-while 구문 (The while and do-while Statements)

자바(Java)에서 순환(loop) 문은 while, do-while, for 문이 있다. 이번 포스팅은 while, do-while 문을 알아본다.

while문의 표현식(expression)true일 경우에 블록 내 구문을 실행한다.

while (expression) {

구문;

}

표현식은 반드시 Boolean 값을 리턴하는 식이어야 한다. 그리고 true 값인 동안은 블록 내 구문을 실행하고 false가 되면 while 구문 실행을 멈춘다. 예제를 통해 확인해 보자.

 

i값이 5보다 작을 동안 while구문을 실행하고 5와 같거나 크면 빠져 나간다. 결과를 보면 while 구문 내 i++로 값이 증가하면서 4까지는 출력을 하고 5인 경우 구문을 빠져나와 End를 출력한다. 표현식만 잘 이해하고 사용하면 된다.

 

 

가끔 무한루프를 사용해야 할 경우가 있다. 그런 경우는 다음과 같이 구현하면 된다.

while(true) {

}

무한루프라면 어떻게 빠져나와야 할까?

다음으로 do-while문이다. 이 순환문이 while문과 다른 점은 외형상 do가 있다는 것이다. 기능적으로 다른 점은 do의 영어적 해석은 하다while문의 표현식과 별개로 무조건 1번은 실행을 한다.

do{

구문

} while(expression)

구성을 보면 먼저 do로 시작하고 해당 블록의 구문을 한 번은 무조건 실행한다. 그리고 마지막에 while 문과 표현식이 있고 truedo 구문을 계속 실행하고 false가 되면 빠져나간다.

설명한 대로 do구문은 최소 한 번은 실행되었다.

기본적으로 표현식이 true일 경우에만 실행해야 하면 while문을 사용하고 만약 어떤 상태의 초기값을 설정하는 게 필요한 경우 do-while문을 사용하면 유용하다.

다음 포스팅은 실전에서 자주 사용하는 for 순환문에 대해 알아본다.

반응형
반응형

[Oracle Java Tutorial을 읽고 순서에 의해 정리한 후 본인의 경험과 이해를 바탕으로 작성된 글임을 밝힌다.]

[Java Tutorial, 자바 프로그래밍 기초 배우기, Java Programming, 자바 튜토리얼]

2019/06/20 - [Software/Java] - [Java_Tutorial]11강-자바 코딩, 같음 관계 조건 연산자[Operators, 자바 프로그래밍 기초 , 자바 튜토리얼]

 

[Java_Tutorial]11강-자바 코딩, 같음 관계 조건 연산자[Operators, 자바 프로그래밍 기초 , 자바 튜토리얼]

[Oracle의 Java Tutorial을 읽고 순서에 의해 정리한 후 본인의 경험과 이해를 바탕으로 작성된 글임을 밝힌다.] [Java Tutorial, 자바 프로그래밍 기초 배우기, Java Programming, 자바 튜토리얼] 앞 포스팅에 이..

tiboy.tistory.com

이번 포스팅은 자바 프로그래밍(Java Programming)을 하기 위한 기본 표현, 구문과 블록에 대해 알아본다.

표현식, 구문, 블럭 (Expressions, Statements, and Blocks)

자바 프로그래밍(java programming)에서 코딩을 하기 위해서는 먼저 표현식을 만들어야 한다. 그 표현식들을 이용해서 구문이 만들어지고 구문들을 묶어 주는 것이 블록이다.

표현식(Expressions)

표현식은 변수, 연산자, 메서드 호출을 만들어 구성하는 것으로 자바 언어 문법을 기반으로 작성된다. 문법에 어긋나면 오류가 난다.

표현식은 기존 예제에서 이미 사용되었다.

Int a = 0;

intArray[0] = 1;

val1 == val2

System.out.println(“val1==val2”);

굵은 부분이 표현식이다. 표현식을 보면 변수에 대한 데이터 타입을 알 수 있다. a = 0에서 a0이라는 값이 할당(“=”)된다. 그럼 a는 숫자형(int type) 변수라는 의미이다. 다른 표현식도 보면 val1 == val2Boolean 타입이고 “val1==val2”String 타입을 나타낸다.

또한 자바 프로그래밍(Java Programming)에서는 복합 표현식도 지원한다. 이는 자바 프로그래밍 뿐 아니라 일반 수학에서 적용되는 부분과 같다. 예를 들어

4*5*7

위 표현식은 사용함에 있어 순서를 바꿔서 계산해도 항상 같은 값이 나오므로 큰 문제가 되지 않는다. 하지만 다음 예제를 보면 순서에 의해 값이 달라지고 그 값에 따라 타입도 달라질 수 있다.

95+5/100

위 연산자는 +보다 /가 우선순위라서 95.05가 된다. 표현식만 보면 정수형(int) 타입이지만 막상 계산을 하면 95.05로 실수형(float/double) 타입이 된다. 하지만

(95+5)/100

표현식의 변수들은 같지만 ( ) 를 씌워서 우선 순위를 변경했다. 위 식의 결과는 1이다. 즉 정수형(int) 타입의 결과가 나온 것이다. ( ) 로 표현식의 타입이 바뀔 수 있다는 것이다. 중요한 것은 표현식을 애매하게 사용해서 개발자 본인 뿐 아니라 다른 개발자에게도 혼선을 줘서는 안된다. 명확하고 간단하면서 가독성이 좋은 표현식을 만드는 것이 가독성에도 좋고 유지보수에서도 중요하다는 것을 잊으면 안된다.

 

 

구문(Statements)

구문은 한 단위를 실행하기 위한 완벽한 구성이어야 한다. 표현식(expressions)는 연산자를 이용한 할당이나 계산식만 만드는 것으로 그 자체가 완벽한 실행 단위는 아니다. 자바 프로그래밍(Java Porgramming)에서 코딩(coding)시 하나의 실행 단위로 문장을 완성하고 한 단위당 완료의 표시로 “;”를 사용한다. 예를 들어

할당 표현식, 증감 연산자(++,--), 메서드 호출, 객체 생성식

int a = 0;

a = 100;

a++;

System.out.println(“abc”);

BankClient bc = new BankClient();

위 구문은 표현식을 이용한 구문이다. 구문(Statements)은 크게 2가지로 구분할 수 있다. 위의 예제와 같은 선언 구문과 제어 흐름 구문이다. 제어 흐름 구문(Control flow statements)은 추후 별도 포스팅 하겠다.

블록(Blocks)

블록은 그룹을 만들 때 사용하는데 구문이 하나도 없거나 (빈 블록) 여러 개의 구문을 묶을 때 사용한다. 그룹은 { } (중괄호)를 사용한다. 예제로 확인해 보자.

Class BlockTest { // 클래스 그룹을 { 로 그룹 시작

Public static void main(String[] args) { // 메인 메서드 그룹 { 로 시작

If (condition) { // if 구문 그룹 { 로 시작

System.out.println(“Test”);

} // if 구문 그룹 } 로 시작

} // 메인 메서드 그룹 } 로 종료

} // 클래스 그룹을 } 로 종료

자바 코딩(java coding)을 위해서 기본적으로 익혀야 할 구문 만들기에 대해 알아보았다. 먼저 필요한 표현식을 구상해서 작성하고 표현식 또는 제어 흐름 구문을 실행 가능 단위로 구성해서 ;로 정리하고 해당 구문들을 그룹화 해서 관리하면 된다.

2019/06/24 - [Software/Java] - [Java_Tutorial]13강-자바 코딩, if else 제어문[Control Flow Statements, 자바 프로그래밍 기초 , 자바 튜토리얼]

 

[Java_Tutorial]13강-자바 코딩, if else 제어문[Control Flow Statements, 자바 프로그래밍 기초 , 자바 튜토리얼]

[Oracle의 Java Tutorial을 읽고 순서에 의해 정리한 후 본인의 경험과 이해를 바탕으로 작성된 글임을 밝힌다.] [Java Tutorial, 자바 프로그래밍 기초 배우기, Java Programming, 자바 튜토리얼] 2019/06/22 - [..

tiboy.tistory.com

다음 포스팅은 제어 흐름 구문(Control Flow Statements)에 대해 알아본다. 이제 점점 자바 프로그래머로 재미를 느끼게 되는 시간이 다가오고 있다. 열심히 공부하고 열심히 코딩하라!

반응형