본문 바로가기

오늘의 공부 & 기록

2월 15일(수)

증감 연산자

for, while, do-while 문에서 사용

전치: ++a, --a( a = a + 1, a = a - 1)

후치: a++, a--

 

 

조건연산자(조건부 연산자, 삼항연산자)

// 참 반환 값과 거짓 반환 값의 반환형은 같아야 함
(조건식) ? 참일 때 반환할 문장 : 거짓일 때 반환할 문장

if문이 가독성이 좋기 때문에 조건연산자는 잘 사용하지 않음

중첩을 통해 if문과 같은 결과를 만들 수 는 있지만 가독성이 좋지 않음

 

public static void main(String[] args) {
		int data = 10;
		String result = (data >= 10 || data < 5) ? "참일 때 반환할 문장" : "거짓일 때 반환할 문장";
		
		System.out.println(result);
		
		data = 8;
		result = (data % 2 == 0) ? "짝수" : "홀수";
		System.out.println(data + " = " + result);
		
		data = 9;
		result = (data % 2 == 0) ? "짝수" : "홀수";
		System.out.println(data + " = " + result);
		
		data = 9;
		int total = (data % 2 == 0) ? --data : ++data; // 조건문의 결과 false, 전치 연산으로 10 반환
		System.out.println(data + " = " + total);
	}

 

비트 연산자

public static void main(String[] args) {
		int data1 = 55, data2 = 22, or = 0, and = 0, xor = 0;
		/**
		 * data1 == 55(10) == 0011 0111(2)
		 * data2 == 22(10) == 0001 0110(2)
		 * or:                0011 0111 == 55(1)
		 * and:               0001 0110 == 22(10)
		 * xor:               0010 0001 == 33(10)
		 */
		
		or = data1 | data2;
		and = data1 & data2;
		xor = data1 ^ data2;
		
		System.out.println("data1 | data2 = " + or);
		System.out.println("data1 & data2 = " + and);
		System.out.println("data1 ^ data2 = " + xor);
	}

cf) xor연산을 이용해서 분산 된 데이터 저장소를 사용하는 경우, 일부가 삭제된 경우 복구 가능

 

Shift 연산자

	public static void main(String[] args) {
		int data = 1;			// 0000 0001 == 1	
		
		data = data << 1;		// 0000 0010 == 2
		System.out.println("1. data <<= 1 : " + data);
		
		data = data <<= 1;		// 0000 0100 == 4
		System.out.println("2. data <<= 1 : " + data);
		
		data = data <<= 3 ;		// 0010 0000 == 32
		System.out.println("3. data <<= 3 : " + data);
		
		
		data = data >>= 1;		// 0001 0000 == 16
		System.out.println("1. data >>= 1 : " + data);
		
		data = data >>= 1;		// 0000 1000 == 8
		System.out.println("2. data >>= 1 : " + data);
		
		data = data >>= 1;		// 0000 0100 == 4
		System.out.println("3. data >>= 1 : " + data);
	}

 

 

제어문

순차적인 흐름을 조건에 따라 통제하는 명령

 

조건 

if - else if - else

단순 if문

// 조건식이 true인 경우 종속문(실행문) 수행
if(조건식) 종속문(실행문);
다음문장;


if(조건식) {
}
다음문장;

 

if else문

if(조건식) 문장1;
else 문장2;
다음문장;


if(조건식) {
}
else {
}
다음문장;

 

반복

while, do while, for

선택

switch - case

흐름변경

continue 반복문 내부에서 사용, 아래 문장을 수행하지 않고 반복문 시작으로 이동

break 반복문, 선택문에서 사용

 

 

 

 

 

'오늘의 공부 & 기록' 카테고리의 다른 글

2월 17일(금)  (0) 2023.02.17
2월 16일(목)  (0) 2023.02.16
2월 14일(화)  (0) 2023.02.14
2월 13일(월)  (0) 2023.02.13
스프링부트 강의 기록  (0) 2023.01.29