6강 연산자

-프로그램이 실행될 때 컴퓨터(CPU)에게 계산(연산)업무를 시키기 위한 방법에 대해 학습

-덧셈,뺄셈,곱셈,나눗셈 및 무엇보다 크다, 작다, 같다 등등 연산에 속한다.

-프로그래밍이 실행 될 때 컴퓨터 cpu에게 계산/연산 업무를 시키기 위한 방법에 대해 학습

 

컴퓨터구조

CPU - 연산업무

메모리 - 하드에 있는 데이터를 CPU로 나르는/가져오는 역할

하드 - 데이터용량

 

 

6-1 피연산자 개수에 의한 연산자 구분

단항 연산자 : 피연산자가 하나 존재

) +5 (+ : 연산자, 5 : 피연산자)

-5 (- : 연산자, 5 : 피연산자)

!x (*x의값을 부정할 때 이렇게 사용한다.)

 

이항연산자 : 피연산자가 두 개 존재

) x = 10, x<10, x>10 (x:피연산자, 10:피연산자)

*오른쪽에 있는 숫자를 변수에 대입할 때 대입연산자를 사용

 

삼항연산자 : 피연산자가 세 개 존재

-조건식의 결과가 참이면 수식어 true 거짓이면 false

)조건식 :true ?false

=> 조건식 : 피연산자, true : 피연산자, false: 피연산자

: 연산자, ? 연산자

 

 

6-2 대입 연산자

-오른쪽의 결과를 왼쪽에 대입(할당) 한다.

*수학에서는 = 는 오른쪽 및 왼쪽 값이 같다라고 쓰이지만,

코딩에서는 오른쪽 값을 왼쪽에 대입한다라고 한다.

*코딩에서 오른쪽 및 왼쪽 값이 같다라고 표현하려면

==를 사용하여야 한다.

 

오른쪽 값을 왼쪽에 대입 한다라는 개념의 예

int x = 10;

int y = 20;

System.out.println("x =" + x);

System.out.println("y =" + y);

=> x = 10

y = 20

 

x = y; //y값을 x에 할당/대입 한다.

System.out.println("x = " + x);

System.out.println("y = " + y);

=> x = 20

    y = 20

 

 

6-3 산술 연산자

-피연산자를 이용해서 +, -, *, /, %등 연산자로서 수행한다.

-산수와는 다르게 프로그램에서는 특히 %(나머지를 구하는)나머지 연산자가 하나 더 있다.

 

+

덧셈

int x =10;, int y=20;

System.out.println("x + y = " + (x + y));

x + y = 30

-

뺄셈

System.out.println("x - y = " + (x - y));

x - y = -10

*

곱셈

System.out.println("x * y = " + (x * y));

x * y = 200

/

나눗셈

int형 결과인 정수만 나온다.

System.out.println("x/y = " + (x / y));

x / y = 0

%

나머지

System.out.println("x % y = " + (x * y));

x % y = 10

 

 

6-4 복합 대입연산자

- 산술 연산자와 대입연산자를 결합한 연산자

int x = 10;

+=

 

더하고대입

System.out.println("x += 10 : " + (x += 10));

*x = x + 10을 줄여서 x+=10으로 표현한다.

x가 두 번 나오니 간략하게 x를 하나로 줄인다.

=> x+=10 : 20

-=

빼고대입

System.out.println("x -= 10 : " + (x -= 10));

*x = x - 10을 줄여서 x-=10으로 표현한다.

=> x-=10 : 0

*=

곱하고대입

System.out.println("x *= 10 : " + (x *= 10));

*x = x * 10을 줄여서 x*=10으로 표현한다.

=>x*=10 : 100

/=

나누고대입

System.out.println("x /= 10 : " + (x /= 10));

*x = x / 10을 줄여서 x/=10으로 표현한다.

=>x/=10 : 1

%=

나머지를 대입

System.out.println("x %= 10 : " + (x %= 10));

*x = x % 10을 줄여서 x%=10으로 표현한다.

=>x%=10 : 0

 

6-5 관계연산자

두 개의 피연산자를 비교해서 참/거짓 결론 도출을 한다.

int x = 10; y = 20;

>

a>b : ab보다 크면 참

System.out.println("x > y : " + (x>y));

<

a<b : ab보다 작으면 참

System.out.println("x < y : " + (x<y));

>=

a>=b : ab보다 크거나 같으면 참

System.out.println("x >= y : " + (x>=y));

<=

a<=b : a b보다 작거나 같으면 참

System.out.println("x =< y : " + (x=<y));

==

a==b : ab가 같으면 참 true

System.out.println("x == y : " + (x==y));

!=

a!=b : ab가 같지 않으면 참 true

System.out.println("x != y : " + (x!=y));

 

실습 (산술연산자, 복합대입연산자, 관계연산자)

 

'신입개발자로 취업하기까지 > JAVA' 카테고리의 다른 글

20200306 7강 배열  (0) 2020.06.14
20200305 6-2강 연산자  (0) 2020.06.14
20200304 5강 특수문자와 서식 문자  (0) 2020.06.14
20200304 4-3강 형 변환  (0) 2020.06.14
20200304 4-2강 Java기본자료형  (0) 2020.06.14

5강 특수문자와 서식 문자

-숫자와 문자 외에 특수문자와 서식문자가 있다.

-특수문자 : 특수한 목적으로 쓰이는 특수문자

-서식문자 : 특정 서식에 쓰이는 서식문자

 

5-1 특수문자

*\ 은 역슬러시를 뜻한다.

 

1.\t 명령어

- tab 기능

) System.out.prinln("Good\tMorning~"); 입력시

하기와 같이 Good 뒤에 tab이 적용되어 나온다.

=> Good Morning~

 

2.\n 명령어

-줄 바꿈

)System.out.prinln("Good\nMorning~"); 입력시

=>Good

Morning~

 

3.\‘ 명령어

-작은 따옴표

) System.out.prinln("Good\'Morning~\'"); 입력시

=>Good 'Morning~'

 

4.\“ 명령어

-큰 따옴표

) System.out.prinln("Good\"Morning~\""); 입력시

=>Good "Morning~"

 

5.\\ 명령어

-역슬래쉬

) System.out.prinln("Good\\Morning~\\"); 입력시

=>Good \Morning~\

 

*\(역슬래쉬)사용하여야 특수문자가 출력 된다.

*양옆에

 

****주석처리 두가지 방법(코드를 왜 이렇게 작성했는지 동료들이 알도록 메모하는 용도)

1. \*   *\

-\*   *\여기 사이에 있는 내용은 주석처리 된다.

 

2. \\ (// 역슬래쉬)

- 한줄만 주석처리 할 때 // 역슬래쉬 두 번을 한다.

예)\\가나다라마바사

 

 

5-2 서식문자

-어떠한 식을 나타낼 때 사용한다.

 printf() 메서드를 이용

*fformat(형식)을 뜻함.

 

%d

10진수

System.out.println("오늘의 기온은 10도입니다.“);

System.out.println("오늘의 기온은 %d도입니다.\n", num1);

 

int num1 = 20;

System.out.println("오늘의 기온은 "+ num1 + "도 입니다.“);

System.out.println("오늘의 기온은 %d도입니다.\n", num1);
//10진수로 숫자가 변경되어 출력된다.

%o

8진수

System.out.println("오늘의 기온은 %o도입니다.\n", num1);

//8진수로 숫자가 변경 되어 출력 된다.

%x

16진수

System.out.println("오늘의 기온은 %x도입니다.\n", num1);

//16진수로 숫자가 변경 되어 출력 된다.

%c

문자

(char)

System.out.printf("소문자\'%c\'의대문자는\'%c\' 입니다.\n", 'a', 'A');

*단문자일때는 ‘’작은따옴표을 사용

%s

문자열

(string)

System.out.printf("\'%s\'을대문자로바꾸면\'%s\' 입니다.\n", "java", "JAVA")

*문자열일때는 “”큰따옴표를 사용할 것

%f

실수

(float)

float f = 1.23f;

System.out.printf("f = %f\n", f);

실수

(double)

double d = 1.23456d;

System.out.printf("d = %f\n", f);

*주로 사용하는 서식문자만 사용 정리함.

*왜 굳이 특수문자를 사용하는가

-실시간으로 데이터(시간, 날짜)가 들어올 때 서식 문자를 이용한다.

)

char c1 = 'a';

char c2 = 'A';

System.out.printf("소문자\'%c\'의대문자는\'%c\' 입니다.\n", 'a', 'A');

c1c2의 로직을 서버네트워크에서 받아오는 값으로 처리를 해주면

그 값이 그 때마다 실시간으로 적용이 되어 출력이 된다.

 

실습1

실습2

 

 

5-3 서식문자의 정렬과 소수점 제한 기능

-서식 문자를 이용해 출력 문자의 정렬 및 소수점 제한 기능을 사용할 수 있다.

 

//서식문자 정렬 기능 %d(10진수 서식문자)

System.out.printf("%d\n", 123);

System.out.printf("%d\n", 1234);

System.out.printf("%d\n", 12345);

=> 123

1234

12345

 

//서식문자 오른쪽으로 정렬

System.out.printf("%5d\n", 123);

System.out.printf("%5d\n", 1234);

System.out.printf("%5d\n", 12345);

=> 123

1234

12345

 

//서식문자 소수점제한 기능

System.out.printf("%f\n", 1.23); => 1.2300000

(00000이 나오게 하는 것을 보고 싶지 않을 때)

System.out.printf("%.0f\n", 1.23); => 1.2

System.out.printf("%.1f\n", 1.23); => 1.23

System.out.printf("%.2f\n", 1.23); => 1.23

System.out.printf("%.3f\n", 1.23); => 1.230

'신입개발자로 취업하기까지 > JAVA' 카테고리의 다른 글

20200305 6-2강 연산자  (0) 2020.06.14
20200305 6강 연산자  (0) 2020.06.14
20200304 4-3강 형 변환  (0) 2020.06.14
20200304 4-2강 Java기본자료형  (0) 2020.06.14
20200304 4강 기본자료형  (0) 2020.06.13

4-3 형 변환

-int형을 쓰다가 long으로 확장/변환 가능하다.

-long형을 쓰다가 공간이 너무 클 경우에 int형으로 변환이 가능하다.

 

형 변환의 두가지 종류

1. 자동적(묵시적) 형 변환

-작은 공간의 메모리에서 큰 공간의 메모리로 이동

 작은 크기의 자료형이 큰 공간으로 들어갈 때 문제 없이 들어갈 수 있다.

ex) byte by =10; //1byte

int in = by; //4byte로 이동, 이렇게 이동을 시켜준다.

System.out.prinln("in = " + in);

=>in = 10

 

2. 명시적 형 변환

-큰공간의 메모리에서 작은 공간의 메모리로 이동할 때 문제가 생기기 때문에 하기와 같이 명시를 해주어야 한다.

 iVar라는 변수가 byte에 담기려면 byte로 형변환을 해서 들어가야 한다고 명시를 해주어야 한다.

 그래서 명시적 형변환이라고 부른다.

 

)int iVar = 100;

byte bVar = (byte)iVar; // byte숫자범위 : -127 ~ +128

System.out.println("bVar = " + bVar);

=>bVar = 100

 

//다시

iVar = 12456;

bVar = (byte)iVar;

System.out.println("bVar = " + bVar);

=>bVar = 64 (데이터손실)

//byte로 들어가기에 숫자 범위에 있지 않고 너무 커서 데이터가 손실 되고 들어갈 수 있는 만큼만 들어간다.

 

실습

*데이터 누실이 일어나지 않게 하기 위해 큰숫자의 데이터를 사용할 때에 처음부터 int나, double을 사용해야 한다.

 

'신입개발자로 취업하기까지 > JAVA' 카테고리의 다른 글

20200305 6강 연산자  (0) 2020.06.14
20200304 5강 특수문자와 서식 문자  (0) 2020.06.14
20200304 4-2강 Java기본자료형  (0) 2020.06.14
20200304 4강 기본자료형  (0) 2020.06.13
20200304 3강 변수  (0) 2020.06.13

+ Recent posts