연산 관련 개념

  • 연산(Operation): 프로그램에서 데이터를 처리하여 결과를 산출하는 것

  • 연산자(Operator): 연산에 사용되는 표시나 기호

  • 피연산자(Operand): 연산되는 데이터
  • 연산식(Expressions): 연산자와 피연산자를 이용하여 연산의 과정을 기술한 것

연산자 정리표

연산자 종류

연산자

피연산자

산출값

기능 설명

산술

+, -, *, /, %

이항

숫자

사칙연산 나머지 계산

부호

+, -

단항

숫자

음수와 양수의 부호

문자열

+

이항

문자열

문자열을 연결

대입

=, +=, -=, *=, /=, %=,

&=, ^=, |=, <<==, >>==, >>>==

이항

다양

우변의 값을 좌변의 변수에 대입

증감

++, --

단항

숫자

1만큼 증가/감소

비교

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

instanceof

이항

boolean

값의 비교

논리

!, &, |, &&, ||

단항

이항

boolean

논리적 NOT, AND, OR 연산

조건

(조건식) ? A : B

삼항

다양

조건식에 따라 A또는 B 하나를 선택

비트

~, &, |, ^

단항

이항

숫자

boolean

비트 NOT, AND, OR, XOR 연산

쉬프트

>>, <<, >>>

이항

숫자

비트를 좌측/우측으로 밀어서 이동


연산의 방향과 우선순위

연산자

연산방향

우선순위

증감(++,--), 부호(+,-), 비트(~), 논리(!)

높음

산술(*,/,%)

 

산술(+,-)

 

쉬프트(<<, >>, >>>)

 

비교(<, >, <=, >=, instanceof)

 

비교(==, !=)

 

논리(&)

 

논리(^)

 

논리(|)

 

논리(&&)

 

논리(||)

 

조건(?:)

 

대입(=, +=, -=, &=, /=, %=, &=, ^=, |=, <<=, >>=, >>>=)

낮음


증감 연산자( ++ , -- )

  • 전위형: 피연산자 앞에 위치, 다른 연산보다 증감 먼저 수행 ( int i = 0; ++i )
  • 후위형: 피연산자 뒤에 위치, 다른 연산 수행 후 증감 실행 ( int j = 0; j++; )

논리 연산자( &&, ||, &, |, ^, !)

  • 일반논리AND연산자, 논리곱(&&): 피연산자 모두 true일 경우 연산 결과 true
  • 일반논리OR연산자, 논리합(||): 피연산자 중 하나만 true이면 연산 결과는 true
  • 배타적 논리합(^): 피연산자가 하나는 true이고 다른 하나가 false일 경우에만 연산 결과 true

논리 부정 연산자(!), (=not 연산자)

  • 참 또는 거짓을 부정한다.
  • !true → false
  • !false → true

덧셈연산자(+) / 문자열 연결 연산자(+) 비교

  • print( 4 + 5 ) => 정수 + 정수 => 9 // 덧셈연산자로 더하기 연산 수행
  • print( "4" + 5 ) => 문자열 + 정수 => "45" (문자열) // 문자열 연결 연산자로 4와 5 문자열을 연결
  • print( "4" + "5") => 문자열 + 문자열 => "45"(문자열) // 문자열 연결 연산자로 4와 5 문자열을 연결

0으로 나누기 또는 나머지 연산을 수행할 수 없음(오류 발생)

  • 실수를 0으로 나누면 무한대(Infinity) 결과값
  • 실수를 0으로 나머지 구하기 하면 NaN(Not a Number)결과값

조건연산자

  • 형식 => 항1 : 항2 : 항3;
  • 항1이 참이면 결과값은 항2
  • 항1이 거짓이면 결과값은 항3


자료형

  • 자바의 자료형은 크게 두 가지로 구분된다.

  • 첫째, 기본 자료형(Primitive Data Type)이다.

  • 둘째, 참조 자료형(Referenced Data Type)이다.
  • Wrapper Class : 기본자료형을 참조형 클래스로 만들어 놓은 클래스로, Object 클래스의 Number 클래스에 속한다. 모든 데이터를 단일 하게 일괄 관리하기 위해 Wrapper 클래스를 사용한다. 나중에 자세히 다룰 예정이니 지금은 참고만 하자.

자료형

명칭

크기

기본값

범위

Wrapper Class

논리

boolean

1byte

false

true, false

Boolean

문자

char

1byte

2byte

\u0000,

null

0~127,

0~65535

Character

정수

byte

1byte

0

-128~127

Byte

 

short

2byte

0

-32,768~32,767

Short

 

int

4byte

0

-2,147,483,658~2,147,483,647

Integer

 

long

8byte

0

-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807

Long

실수

float

4byte

0.0

-3.4 * 1038 ~ 3.4 * 1038

Float

 

double

8byte

0.0

-1.7 * 10308 ~ 1.7 * 10308

Double

문자열

String

Resizable

null

Resizable

참조자료형


        * 정수형은 int, 실수형은 double이 기본 자료형이다.

기본 자료형(Primitive Data Type)

  • 숫자(정수, 실수)와 문자인 char 자료형과 논리형으로 구성되어 있다.
  • 스택 영역에 생성되고 실제 값을 변수에 저장한다.
  • 실수 자료형이 정수형보다 크다.
  • float 자료형의 값에는 F(또는 f) 접미사를 붙여야 한다.예) 3.14f, 3.14F
  • double 자료형도 명시할 경우 D(또는 d) 접미사를 붙일 수 있으나, 기본 실수형이므로 생략 가능하다.
  • long 자료형 값에는 L(또는 l) 접미사를 붙여야 하나, 정수형 중에 가장 큰 자료형이므로 자동 형변환이 되어 생략 가능하다.

참조 자료형(Referenced Data Type)

  • 객체(Object)의 번지를 참조하는 타입으로 배열, 열거, 클래스, 인터페이스 타입이 있다.
  • 메모리의 번지(주소)를 값으로 갖는다.
  • 참조 변수는 스택(Stack)영역에 생성되고 객체의 값을 가진 힙 영역의 주소가 저장된다.
  • null 값을 가지면 주소를 참조하는게 아니라 null 값을 가지는 것, 힙 영역에 참조할 값들은 쓰레기(Garbage)가 되어 Garbage Collector가 처리하여 메모리를 확보한다.
  • 선언

자료형 변수명(참조변수명) = new 초기화;

예) 

int x = 3; double pi = 3.14; // 정수와 실수형 변수를 선언하고 값을 대입하여 초기화.

int x = getNumber(); // 정수형을 반환하는 임의의 함수인 getNumber()로부터 값을 받아 대입하여 초기화.

x = 4; // 스택 영역에 생성되어 있는 x의 값에 새로운 값인 4를 대입

Date today = new Date(); // Date 참조 자료형의 객체인 today 변수 선언 후, new 연산자로 Date() 객체로 초기화.

* new 연산자 = 참조타입의 값을 힙(heap)메모리에 생성



작업 폴더 셋팅


1. C:\ 경로에 Java 폴더 생성


2. Java 폴더에서 workspace와 setup_download 폴더 생성


3. 이클립스 실행 후 workspace 경로 설정시 C:\Java\workspace 지정


4. 이 후 다운로드에 필요한 파일은 setup_download에 생성



JDK 설치



1. http://www.oracle.com 접속


2. Downloads 클릭


3. 좌측 Java SE 클릭 → 상단 탭 Overview 우측의 Download 클릭


4. Java 아이콘 모양 밑 Download 클릭(다운로드 경로 C:\Java\setup_download)



5. Java SE Development Kit 8u51 하단 Accept License Agreement 체크

a. JDK = Java Development Kit (자바 개발 도구)

b. SE = Standard Edition

c. 8u51 = JDK 8버전, Update 51


6. 운영체제에 맞는 설치파일 다운로드 클릭

a. 윈도우 운영체제 확인: 윈도우키+s → '시스템' 검색 → '시스템 종류' 확인

b. 64비트: x64 파일, 32비트: x86 파일


7. 4번 화면으로 이동하여 스크롤을 내려 'Additional Resources' → Java SE 8 Documentation 우측 DOWNLOAD 클릭


8. Java SE Development Kit 8u51 Documentation 항목 Accept License Agreement 체크하고 다운로드

a. Java API(매뉴얼 라이브러리)


10. JDK SE 1.8_51 설치파일 실행 후 계속 Next

a. 기본 설치 위치: C:\Program Files\Java\jdk1.8.0_51

b. 처음에 JDK가 설치 된 후 JRE(Java Runtime Environment)가 설치 됨

c. JDK와 같이 C:\Program Files\Java\ 에 설치됨


11. JDK가 어느 경로에서든 사용 가능하도록 path 설정 작업

a. 6-a와 같이 시스템 창에 진입

b. 좌측에 고급 시스템 설정 클릭

c. 시스템 설정 창에서 하단 환경 변수 클릭

d. 시스템 변수란에서 Path 변수를 클릭 후 편집

e. 변수 값에서 맨 마지막 글자 뒤에 ; (세미콜론) 입력

f. C:\Program Files\Java\jdk1.8.0_51\bin 붙여넣기

g. 참고: 추후 톰캣 설치 시에는 시스템 변수에 JAVA_HOME을 새로 만들고 path를 수정해야함


11. 10번 작업 수행 여부 확인

a. 윈도우 키 + S → cmd

b. javac -version 입력

c. 자바 버전이 나오면 10번 작업이 잘 수행되었다는 것


12. CLASSPATH 설정

a. 10-c 이후 시스템 변수에 새로 만들기 클릭 변수명에 CLASSPATH, 변수 값에 . (온점) 입력

b. . (온점): 현재 디렉토리



이클립스(Eclipse) 설치



1. https://eclipse.org/downloads/ 접속

2. 첫번째 Eclipse IDE for Java EE Developers 다운로드(운영체제에 맞게)

3. 압축 풀기(경로: C:\eclipse)
a. 경로가 길어 오류가 난다면 root 디렉토리(C:\) 에서 압축파일 명을 임의로 줄인 후 압축 풀기

4. eclipse.exe 실행

5. workspace 경로 설정(C:\Java\workspace)





+ Recent posts