23
담담 : 담 담 담 담담 담담담 : 담담담 410 담 e-mail : [email protected] 3 3 담담 담담 담담담 담담 담담 담담담 담담 담담

3 주차 자바의 기본 문법

Embed Size (px)

DESCRIPTION

3 주차 자바의 기본 문법. 담당 : 안 유 정 교수 연구실 : 연구동 410 호 e-mail : [email protected]. 수업 순서. 프로그램의 구성 단위 변수 자료형 연산자. 프로그램의 구성 단위. 문자 낱개의 글자 예 ) if (i>0) i += 100; 은 아래의 문자들로 구성됨 . i, f, (, i, >, ), i, +, =, ; ( 공백문자 제외 ) 프로그램의 최소 단위 문자를 표현하기 위해 unicode 사용 - PowerPoint PPT Presentation

Citation preview

Page 1: 3 주차  자바의 기본 문법

담당 : 안 유 정 교수

연구실 : 연구동 410호

e-mail : [email protected]

33 주차 주차

자바의 기본 문법자바의 기본 문법

Page 2: 3 주차  자바의 기본 문법

수업 순서수업 순서

프로그램의 구성 단위

변수

자료형

연산자

Page 3: 3 주차  자바의 기본 문법

프로그램의 구성 단위프로그램의 구성 단위

문자 낱개의 글자 예 ) if (i>0) i += 100; 은 아래의 문자들로 구성됨 .

i, f, (, i, >, ), i, +, =, ; (공백문자 제외 )

프로그램의 최소 단위

문자를 표현하기 위해 unicode 사용 하나의 문자를 16 bits로 표현

Page 4: 3 주차  자바의 기본 문법

토큰 (token) 프로그램에서 의미를 갖는 최소 단위

예 ) if (i >0) i+= 100; 에서 토큰을 찾으면 if, (, i, >, 0, ), i, +=, 100, ; 토큰 10개

프로그램의 구성 단위프로그램의 구성 단위

★ TIP : 문장에서 각 표현이 원래의 의미를 잃지 않도록 나눈다

Page 5: 3 주차  자바의 기본 문법

자바의 토큰

특수형태

일반형태

지정어 (keyword) : class, public, int, ...

연산자 (operator) : +, -, *, /, ...

구분자 (delimiter) : , ; . ( ) { } [ ]

식별자 (identifier) : sum, i, HelloJava, ...

리터럴 (literal) : 12, 5.53, 5.97e24, ‘a', “Hello"

프로그램의 구성 단위프로그램의 구성 단위

자바에서 토큰의 범주

Page 6: 3 주차  자바의 기본 문법

abstract boolean break byte castcatch char class const continuedefault do double else extendsfinal finally float for gotoif implememts import instanceof intinterfacelong native new packageprivate protected public return shortstatic super switch synchronized

thisthrow throws transient try voidvolatile while

자바의 지정어 (keyword)

프로그램의 구성 단위프로그램의 구성 단위

Page 7: 3 주차  자바의 기본 문법

식별자 (identifier) 변수 , 상수 , 배열 , 클래스 , 메소드 등에 프로그래머가 부여한

이름

자바에서 식별자를 만드는 규칙 첫 문자가 영문자나 특수문자 ('_','$') 로 시작 길이에는 제한을 두지 않는다 예약어는 식별자로 사용할 수 없다 .

대 , 소문자를 구분하여 사용 자바 식별자의 예

바른 식별자 : sum, sum1, _sum, $sum, money_sum, MoneySum

틀린 식별자 : 1sum, #sum, Money Sum, package

프로그램의 구성 단위프로그램의 구성 단위

Page 8: 3 주차  자바의 기본 문법

리터럴 (literal) 자신의 표기법이 곧 자신의 값이 되는 상수 정수형 상수 , 실수형 상수 , 논리형 상수 , 문자형 상수 ,

문자열 상수 5, 100.24, true, ‘a’, “Hello”

1.정수형 상수 ( 정수형 리터럴 ) 10진수 , 8진수 , 16진수 예 )

10 진수 : 15, 255, 65535 8 진수 : 017, 0377, 017777716 진수 : 0xf, 0xff, 0xffff

프로그램의 구성 단위프로그램의 구성 단위

Page 9: 3 주차  자바의 기본 문법

2. 실수형 상수 ( 실수형 리터럴 )

지수 (exponentexponent) 의 유무에 따라

고정소수점 수 : 1.414, 3.1415924부동소수점 수 : 0.56789e8, 0.56789E8, 0.1234e-3

예 ) 0.0001234 = 0.1234 x 10-3 = 0.1234e-3

56789000 = 0.56789 x 108 = 0.56789e8

프로그램의 구성 단위프로그램의 구성 단위

Page 10: 3 주차  자바의 기본 문법

3. 논리형 상수 ( 논리형 리터럴 ) true, falsetrue, false

예 ) boolean ok=true;

// 논리형 변수 ok 를 선언하고 // 초기값으로 논리형상수 true 를 입력

프로그램의 구성 단위프로그램의 구성 단위

Page 11: 3 주차  자바의 기본 문법

4. 문자 상수 단일 인용부호 (single quote) 사이에 표현 예 ) ‘a’ 특별한 문자 : escape sequence

\n newline \t tab

\b backspace\r return\f form feed

5. 문자열 상수 이중 인용부호 (double quote) 사이에 표현 예 ) “Hello”

프로그램의 구성 단위프로그램의 구성 단위

Page 12: 3 주차  자바의 기본 문법

23年 4月 20日

변수변수

값 (value)이 저장될 메모리의 위치에 대해 프로그래머가

부여한 이름

자바는 변수를 사용하기 전에 반드시 선언하여야 한다 .

엄격한 형 검사 (Strongly type checking)

예 ) int i; // 변수를 반드시 선언하고 사용하면

i = i + 2; // 실행전에 미리 x 를 위한 공간이

// 할당됨

변수 (variables)

Page 13: 3 주차  자바의 기본 문법

23年 4月 20日

자료형자료형

자료형

기본형 참조형

숫자형 문자형 논리형 배열형 클래스형 인터페이스형

정수형 실수형

Page 14: 3 주차  자바의 기본 문법

23年 4月 20日

자료형 자료형 –– 기본형기본형

기본형

정수형

short

byte

long

float

double

숫자형

실수형

문자형 논리형

char boolean

int

Page 15: 3 주차  자바의 기본 문법

자료형 자료형 –– 기본형기본형

문자형 논리형 byte 정수형 short

integer long실수형 float double

16 비트 유니코드 (Unicode) 문자 데이터 참 /거짓 (1 비트 ) 을 가진 논리 값부호를 가진 8 비트 (1byte) 정수부호를 가진 16 비트 (2bytes) 정수부호를 가진 32 비트 (4bytes) 정수부호를 가진 64 비트 (8bytes) 정수부호를 가진 32 비트 (4bytes) 부동소수점부호를 가진 64 비트 (8bytes) 부동소수점

charboolea

nbyteshortintlongfloatdouble

자료형 지정어 설명

Page 16: 3 주차  자바의 기본 문법

자료형자료형 -- 예제 해보기예제 해보기

자료형 예제 해보기

class DataType { public static void main(String[] args) {

int i; // 32 비트 부호있는 정수 long l; // 64 비트 부호있는 정수 float f; // 32 비트 부호있는 실수 double d; // 64 비트 부호있는 실수

for (int k=1; k <= 100000000; k = k*100) { d=f=l=i=k; System.out.println(k+" 의 세제곱 -->"); System.out.println("int 형 정수 ="+(i*i*i)); System.out.println("long 형 정수 ="+(l*l*l)); System.out.println("float 형 실수 ="+(f*f*f)); System.out.println("double 형 실수 ="+(d*d*d)); } }}

class DataType { public static void main(String[] args) {

int i; // 32 비트 부호있는 정수 long l; // 64 비트 부호있는 정수 float f; // 32 비트 부호있는 실수 double d; // 64 비트 부호있는 실수

for (int k=1; k <= 100000000; k = k*100) { d=f=l=i=k; System.out.println(k+" 의 세제곱 -->"); System.out.println("int 형 정수 ="+(i*i*i)); System.out.println("long 형 정수 ="+(l*l*l)); System.out.println("float 형 실수 ="+(f*f*f)); System.out.println("double 형 실수 ="+(d*d*d)); } }}

다음은 여러 자료형에 똑같은 값을 대입하여 계산을 하고 출력해보는 예제이다 .

프로그램을 작성한 뒤 컴파일하고 실행하여 결과를 내보시오 .

DataType.java

Page 17: 3 주차  자바의 기본 문법

자료형자료형 -- 예제 해보기예제 해보기

자료형 예제 실행 결과

1 의 세제곱

100 의 세제곱

10000 의 세제곱

1000000 의 세제곱

100000000 의 세제곱

Page 18: 3 주차  자바의 기본 문법

연산자연산자

산술 연산자 : + - * / % 단항 + 단항 -

관계 연산자 : > >= < <= == !=

논리 연산자 : && || !

증감 연산자 : ++ --

비트 연산자 : & | ^ ~ << >> >>>연산자의 종류

조건 연산자 : ?:

배정 연산자 : = += -= *= /= %= &= ^= |= >>= <<= >>>=

캐스트 연산자 : ( 자료형 )

배열 연산자 : []

메소드 연산자 : () .

instanceof 연산자 : instanceof

Page 19: 3 주차  자바의 기본 문법

연산자 연산자 –– 산술 연산자산술 연산자

이항 + - * /

%단항

+ -

++ --

x 와 y 를 더한다 . x 에서 y 를 뺀다 .x 와 y 를 곱한다 .x 를 y 로 나눈다 .x 를 y 로 나눈 나머지를 구한다 .양수 x음수 xx 값을 1 증가시킨다 .x 값을 1 감소시킨다 .

x + y x - yx * yx / yx % y+x-x++x--x

산술 연산자 표현식 설명

Page 20: 3 주차  자바의 기본 문법

연산자 연산자 –– 산술 연산 예제산술 연산 예제 산술 연산자들을 이용하여 다음과 같은 결과가 나오도록 예제 프로그램을 해보자 .

Page 21: 3 주차  자바의 기본 문법

연산자 연산자 –– 산술 연산 예제산술 연산 예제

산술 연산자들을 이용한 예제Arithmetic.java

class Arithmetic{ public static void main(String[] args) {

} // main 종료} // 프로그램 종료

Page 22: 3 주차  자바의 기본 문법

> >= <<= ==!=

&& || ! & | ^

x 값이 y 값보다 크다 .

x 값이 y 값보다 크거나 같다 .

x 값이 y 값보다 작다 .

x 값이 y 값보다 작거나 같다 .

x 값이 y 값과 같다 .

x 값이 y 값과 같지 않다 .

x, y 가 모두 true 이면 true, 아니면 false

x, y 둘 중 적어도 하나가 true 이면 true, 아니면 false

x 가 true 이면 false, x 가 false 이면 true

x 와 y 의 대응되는 비트들 사이의 논리곱

x 와 y 의 대응되는 비트들 사이의 논리합

x 와 y 의 대응되는 비트들 사이의 배타적 논리합

x > y x >= yx < yx <= yx == yx != yx &&yx || y !xx & yx | yx ^ y

연산자 표현식 설명

연산자 연산자 –– 관계 및 논리 연산자관계 및 논리 연산자

관계연산자

논리연산자

Page 23: 3 주차  자바의 기본 문법

연산자 연산자 –– 관계 및 논리 연산 예제관계 및 논리 연산 예제 관계 및 논리 연산자들을 이용하여 아래와 같은 예제 프로그램을 해보자.

어느 놀이공원에서 나이가 5 세 이하이거나 65 세 이상이면 입장료는 무료라고 한다 . 다음을 만족하는 조건식을 () 안에 써보시오 .

if ( ) // 입장료는 무료