본문 바로가기

프로그래밍(코딩)/JAVA(이클립스)

Java 독학하기-(6) 자바 언어의 '형 변환'과 '연산자'에 대해 알아보기

반응형

'Java 독학하기-(6) 자바 언어의 '형 변환'과 '연산자'에 대해 알아보기'

 

 

이번 코로나 시국이라 그런지 학교 일정이 매우 바쁘게 진행되어 정신없이 보내게 되어 이제서야 다시 프로그래밍 공부를 다시 시작하게 되었네요. ㅜㅜ 앞으로 당분간은 꾸준히 진행해보도록 노력해야겠습니다. 자, 그럼 본론으로 돌아가서 이번에 자바 언어에서 알아볼 내용은 바로 '형 변환''연산자'에 대한 것입니다.

 

 


 

우선 자바 언어에서의 '형 변환'에 대해 알아보도록 하겠습니다. 일반적으로 정수와 실수를 프로그래밍에서 사용하게 되면 각각 다른 자료형으로 선언을 해야합니다. 이때 정수와 실수를 연산하게 될 때 서로 자료형이 맞지 않기 때문에 자료형을 먼저 통일한 후에 연산을 해야되므로 '형 변환'이 필요합니다.

 

'형 변환' 방식으로 크게 2가지로 나뉘게 되는데요, '묵시적 형 변환' '명시적 형 변환'으로 나뉘게 됩니다.

 


 

먼저 '묵시적 형 변환'에 대해 알아보자면, 말 그대로 별도의 명령 없이도 자동으로 자료형이 변환된다는 것입니다.

 

***

-(byte)크기가 작은 자료형 -> 크기가 큰 자료형 (자동으로 형 변환)

ex) int형(4바이트)-> long형(8바이트)

 

-덜 정밀한 자료형 -> 더 정밀한 자료형 (자동으로 형 변환)

ex) int형(정수 범위) -> float형(실수 범위까지)

 

'묵시적 형 변환' 예시

 


 

그 다음으로 '명시적 형 변환'은 위와는 반대의 경우로 생각하면 쉽게 이해될 수 있습니다.

 

***

-(byte)크기가 큰 자료형 -> 크기가 작은 자료형 (수동으로 형 변환)

ex) int형(4바이트) -> byte형(1바이트)

 

-정밀한 자료형 -> 덜 정밀한 자료형 (수동으로 형 변환)

ex) float형(실수 범위) -> int형(정수 범위)

 

'명시적 형 변환' 예시

 


 

 


 

이제 자바에서 사용되는 '연산자'에 대해 알아보도록 하겠습니다. 연산자는 1+1과 같은 더하기 뿐만 아니라 빼기, 곱하기, 나누기 등을 의미합니다. 프로그래밍의 핵심은 연산을 통해 모든 동작들이 이루어지기 때문에 자바 프로그래밍에 있어서 중요한 부분들 중 하나라고 볼 수 있습니다.

 

우선 연산자를 크게 '단항 연산자', '이항 연산자', '삼항 연산자'로 나뉘어집니다. 이때 '항'은 연산 때 각 숫자 값 하나를 뜻합니다. (1+2에서 1,2는 항, +는 연산자) 또한, 항에 따른 연산자 우선순위로는 (단항->이항->삼항) 각 순서대로 연산이 이루어지게 됩니다. 그럼 이제 각 연산자 별 역할과 특징에 대해 알아보도록 하겠습니다.

 


 

1. '대입 연산자'는 변수에 어떤 값을 대입하는 연산자입니다. 형식적으로 표현하자면, 오른쪽 변수 값이나 식의 연산 후의 값을 왼쪽 변수에 대입하게 됩니다.

 

***

왼쪽 변수 = 오른쪽 변수 또는 상수 또는 식

 


 

2. '부호 연산자'는 쉽게 말해 양수, 음수에서 주로 사용하는 +,-가 바로 부호 연산자입니다.

 

***

양수:+, 음수: -

 


 

3. '산술 연산자'는 덧셈(+), 뺄셈(-), 곱셈(*), 나눗셈(/), 나머지(%)로 총 5가지로 이루어져 있습니다. 연산 우선순위는 일반적인 수학에서의 순서와 동일합니다. (*, /, % -> +, -)

 

***

덧셈(+), 뺄셈(-), 곱셈(*), 나눗셈(/), 나머지(%)

 

 

'산술 연산자' 예시

 


 

4. '증가-감소 연산자'는 단항 연산자로 항의 앞, 뒤에 위치하여 1 증가 혹은 감소를 시킵니다.

 

***

val = (++,--)num; (num 값이 먼저 1 증가 or 감소한 후, 변수 val에 대입)

val = num(++,--); (num 값이 먼저 변수 val에 대입 후, num 값 1 증가 or 감소)

 

'증가-감소 연산자' 예시

 


 

5. '관계 연산자'는 이항 연산자이며, 2개의 항 중 대소 혹은 같음의 여부를 판단하여 참(True) 혹은 거짓(False)로 반환되게 됩니다.

 

***

>, <, >=, <=, ==, !=

 


 

6. '논리 연산자'는 명제의 참과 거짓에 따라 논리 연산이 가능하게 해줍니다.

 

***

&&(논리 곱) : 두 항이 모두 참 -> 참

||(논리 합) : 두 항 중 하나라도 참이면 -> 참

!(부정) : 참 -> 거짓, 거짓 -> 참

 

'논리 연산자' 예시

 


 

7. '복합 대입 연산자' 서로 다른 연산자를 조합해 하나의 연산자처럼 사용이 가능하게 한다. 이를 통해 코드를 간결하게 표현이 가능합니다.

 

***

Do it! 자바 프로그래밍 입문 책 中

 


 

8. '조건 연산자'는 삼항 연산자이며, 주어진 조건식이 참인 경우 (1), 거짓인 경우 (2)가 선택되게 됩니다.

 

***

조건식? (1) : (2)

 

'조건 연산자' 예시

 


 

+

 

추가적으로 '비트 연산자'에 대해 간단히 알아보자면 일반적인 값이 아닌 특정 값에 해당하는 비트 값을 통해 연산할 때 이용되는 연산자입니다.

 

***

& 연산자 : 두 개의 비트 값이 모두 1인 경우에만 결과 값이 1로 출력

| 연산자 : 두 개의 비트 값이 하나라도 1일 경우, 결과 값이 1로 출력

^ 연산자 : 두 개의 비트 값이 같은 값이면 0, 다른 값이면 1로 출력

~ 연산자 : 비트 값을 0은 1로, 1은 0으로 바꾸어 출력

 

<< 연산자 : 비트를 왼쪽으로 이동 (=기존 값에 2^n 곱하는 것)

>> 연산자 : 비트를 오른쪽으로 이동

>>> 연산자 : 비트를 오른쪽으로 이동 (부호 비트 상관X)

 

 

'비트 연산자' 예시

 

+

연산자 우선순위 :

 

Do it! 자바 프로그래밍 입문 中 

 


 

 

Do it! 자바 프로그래밍 입문
국내도서
저자 : 박은종
출판 : 이지스퍼블리싱 2018.08.06
상세보기

 

이렇게 자바 프로그래밍에서의 '형 변환'과 '연산자'에 대해 직접 공부한 후, 내용들을 정리해보았습니다. 아직 배워나가고 있는 중이기 때문에 헷갈린 부분들도 약간 있었지만, 직접 글로 적어보면서 정리하니 다시 이해가 가지 않았던 부분도 늦게나마 이해할 수 있었네요. 그 다음으로 조건문과 반복문을 할 차례라 기대가 많이 됩니다. ㅎㅎ

 

 

 

 

 

 

 

 

 

 

추천하는 글

 

 

부담없는 DJI 드론, DJI 텔로 부스트 콤보 개봉기 및 비행 후기

'부담없는 DJI 드론, DJI 텔로 부스트 콤보 개봉기 및 비행 후기' 코로나로 인해 밖에 나가기가 꺼려져 요즘에는 야외에서 드론을 날리는 빈도가 점점 줄어들더라고요. 그래서 실내에서 날리기 좋

anywhereifyoucan.com

 

 

언제 어디서든 스튜디오급 사운드를, 갤럭시 버즈 플러스 개봉기

'언제 어디서든 스튜디오급 사운드를, 갤럭시 버즈 플러스 개봉기' 올해에는 갤럭시 버즈가 한층 업그레이드되어 갤럭시 버즈 플러스로 출시되었는데요, 이번에 갤럭시 S20을 구입하면서 99,000원

anywhereifyoucan.com

 

반응형