비교 연산자

  • 자바 언어에서도 두 변수의 값을 비교하기 위해 다음과 같은 비교 연산자

논리 연산자

  • 한 개 이상의 조건이 모여 새로운 조건을 만들어 낼 때 사용하는 것
  • '또는', '그리고(and)', '~이 아닌(not)'이란 뜻을 가진 총 3가지 논리 연산자

아래의 논리 연산자를 그림으로 표현하면 이런 원리다.

데이터 타입의 변환

  • 특정 데이터가 있는데 그 데이터 타입의 값을 담는 상자를 변수라고 한다.
  • int 변수끼리 연산하면 int 값이 , float 변수끼리 연산하면 float 값이 나오는것 이다.

아래의 그림은 데이터 타입을 이용하여 출력한 예이다.

  • 위와 같이 연산 시 정수와 실수를 섞어서 계산하면, 정수는 실수로 변환되어 계산된다.
  • 하지만 int가 있음에도 굳이 float를 쓰는 이유는 바로 메모리 때문이다.

=> 이처럼 메모리의 효율을 위해서 데이터 타입이 다양한 것이다.

> 담을 수 있는 값의 크기 비교(시험에 나옴)

  • ()를 사용하여 '(데이터 타입)' 이라고 값이나 변수 앞에 쓰면, 해당 데이터 타입으로 강제 변환한다. 이를 Cast라고 하고 () 를 '캐스트 연산자' 라고 한다.

연산자의 우선 순위

시프트 연산자( << , >> )

  • 0과 1로 표현 하는 2진수를 사용합니다.
  • 예를 들어 byte a =2; 라고 선언을 하면 0000 0010으로 메모리에 저장 되는 것이다.

위의 byte a = 2;를 이용한 시프트 연산자의 예다.

=> 즉, '<<'는 왼쪽으로 bit를 이동시키고, 이동시킨 bit 수만큼 2배, '>>'는 역시 오른쪽으로 bit를 이동 시키고 이동 시킨 bit 수만큼 1/2배의 값이 되는 것입니다.

그럼 이런걸 왜쓸까요?

바로 연산 시간을 단축하기 위함이다(효율). 일반적인 사칙연산은 쉽게 설명하면 2~128 정도가 걸립니다. 하지만 이 시프트 연산자는 0.2 정도 밖에 안걸리기 때문이다. (3D모델링, 게이밍)

여러가지 배열

  • 한마디로 표현 하면 특정 타입의 데이터를 담는 변수들의 묶음이다.

아래의 식으로 배열을 선언한다.

  • 하지만 더 간편하게 배열의 선언과 동시에 배열 요소에 값을 저장할 수도 있다.

=> 위의 내용들은 1차원 배열이라 하지만 우리는 2차원 배열과 3차원 배열도 있다.
보통 1차원은 데이터를 담을때, 2차원은 이미지, 3차원은 3D에 사용한다.

profile
기초부터 차근차근 달려볼까요 :)

0개의 댓글