[Java] Flag 란?
2022. 1. 7. 09:33
Flag
영문 의미인 깃발, 의 뜻처럼 현재 상태를 인식, 처리 흐름을 제어하기 위한 변수.
Boolean 타입의 변수이기 때문에 토글(on/off) 의 역할에 사용하기도 함.
boolean flag = true;
flag =! flag; // flag = false 변환
System.out.println(flag); // false 출력
flag =!flag; //true 변환
System.out.println(flag); // true 출력
또한 IF 조건문, while, for 반복문 등을 사용 할 때, flag를 사용하여 true/false 를 대체하여 사용할 수도 있다.
예제1 while문
int num;
int sum = 0;
boolean flag = true;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("더하기를 할 숫자 입력(계산을 원하면 0 입력 후 엔터)");
while (flag) { // flag가 true인 동안 while이 지속.
System.out.print(">> ");
String tmp = br.readLine();
// 문자열 받기
num = Integer.parseInt(tmp);
// BufferReadered 로 String 타입을 받았으니 Int 타입으로 바꿔주기
if (num != 0) {
// 0 != 0 거짓
sum += num;
} else {
flag = false;
}
}
System.out.println("합계 : " + sum);
예제2 조건문
int N = 15 ;
int odd = 0; int even = 0; // 홀짝을 넣을 변수 생성
boolean flag=true; // 구분할 flag 생성
for(int i = 0; i<N; i++){
if (flag){
odd = odd + i;
flag = false;
} else { // flag가 false 인 상황
even = even + i;
flag = true;
}
}
System.out.println("홀수의 합은 : " + odd); // 홀수의 합은 : 56
System.out.println("짝수의 합은 : " + even); // 짝수의 합은 : 49
flag를 통해 분기점을 만들고, i가 홀수와 짝수일 때 각각의 변수에 더해지게 만듬으로써 홀수짝수 합계를 구했다.
'Java' 카테고리의 다른 글
[Java] 상수집합 enum 의 활용 (0) | 2022.01.07 |
---|---|
[Java] BOJ 8958번 관련 String -> char 자료형 변환 (0) | 2022.01.07 |
[Java] Map 맵과 Set 집합 기초 정리 (0) | 2022.01.05 |
[Java] Array와 List 기초 학습 (0) | 2022.01.05 |
[Java] 기초 자료형과 문자 포매팅. (0) | 2022.01.05 |