티스토리 뷰

프로그래밍/Java

변수, 연산자

안싱미 2016. 1. 13. 14:00

변수



변수를 왜 쓸까?

  • 개념 : 프로그램이 특정한 처리를 하기 위해 필요한 값

  • 등장 : 변수는 1970년대에 나왔고, 폰 노이만이 개발, 그 전에는 단순 계산만 가능했음.

  • 프로그램 내에서 값이 수시로 변하기 때문에 이 값을 저장할 수 있는 메모리를 뜻한다. 즉, CPU가 바로바로 처리를 할 수 있도록 만들어주는 것이다.



변수를 선언하는 방법

   두가지 방법이 있다.

  • 변수 선언과 동시에 값을 집어넣는 것 ex. int numberOne = 10;

  • 변수 선언만 하는 것 ex. int additionResult;

 

변수의 타입

   두가지 타입이 있다.

  • 기본형(primitive type)

  • 참조형(reference type)


 

먼저 기본형에 대해서 알아보자.


 

1. 문자형 : char

  • 글자 하나를 의미, 홑따옴표 사용 (ex. ‘A’, ‘1’, ‘-’, ‘♥’)

  • ‘a’ 는 문자, 숫자로 출력이 가능함 (ex. ‘a’+1 는 b)

  • 문자열 : 글자가 하나 이상, 쌍따옴표 사용(ex. “ABC”, “A”)

★ 문자열 + 숫자 → 문자열

  • 예제

  1. 첫번째 식의 결과 : a+5105

why? 문자열 + 숫자 → 문자열로 출력됨.

“a+5”는 쌍따옴표로 되어있으므로 문자열, 10, 5는 숫자.

but +연산을 하는 것이 아니라 10 과 5를 문자로 인식하여 출력하게 된다.

 

  1. 두번째 식의 결과 : 100

why? ‘a’는 글자 하나이므로 문자형이지만, 변수 특성상 숫자로 출력이 가능하다. 소문자 a는 ASCII코드 상 97이므로, 계산 결과 100이 출력하게 된다.

 

 

 

     

2. 숫자형

  숫자형은 두가지로 나뉜다.

 

  • 정수형 : 4가지 (byte, short, int, long)

  1. byte : -28~28-1

  2. short : -216~216-1

  3. int : -232~232-1

  4. long : -264~264-1

 정수형에서 가장 많이 쓰이는 변수 : int

 

  • 실수형 : 2가지 (float, double)     

 실수형에서 가장 많이 쓰이는 변수 : double


 

3.  논리형 : boolean

  • 따옴표 적지 않는다.

  • 결과는 true, false 두가지이다.


 

주석

  • 한줄 주석 : //

  • 여러줄 주석 : /** */ or /* */


 

연산자


사칙 연산

  • 종류 : +, -, *, /, %

  • +의 경우 문자+문자, 문자+숫자, 숫자+숫자 연산이 가능

  • %는 홀짝 구할 때, 주로 웹에서 많이 사용

  • 사칙 연산의 결과 : 숫자, 문자

  • 예제

   

    결과 : 안녕하세요.

 

사칙단항연산자

  • 종류 : +=, -=, *=, /=, %=

  • /=를 할 때 결과값을 어떤 변수타입이 받는지가 중요. 실수형 변수로 받아야 버그가 생기지 않음


 

비교연산자

  • 종류 : >, >=, <, <=, ==, !=

  • 비교 연산의 결과 : true/false

  • 예제

   

       결과: true

                true


 

논리 연산자

  • 종류 : &&(and), ||(or)

  • a>b>c (X)

     a>b and b>c (X)

     a>b && b>c (O)

  • 논리 연산자의 결과 : true/false

  • 경우의 수를 판단할 때 사용.(테이블 외워두기)


 

식1

식2

and

or

T

T

T

T

T

F

F

T

F

T

F

T

F

F

F

F


 

  • 예제

풀이 : F || F

결과값 : False



 

'프로그래밍 > Java' 카테고리의 다른 글

자바 프로젝트 Export, Import 하기  (0) 2016.01.19
조건문, 반복문  (0) 2016.01.18
스캐너  (0) 2016.01.15
명명규칙, 캐스팅  (0) 2016.01.14
자바&이클립스 설치, 첫 프로젝트 만들기  (0) 2016.01.12
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
글 보관함