▶ 뭉충닷컴
 
mungchung.com login
Site Search
My Space
주절주절...
공부방
쥔장소개
Board
자유게시판
유용한 정보
자료실
Programming
강좌 & Articles
Spring 3.0
프로그래밍 Tip
   -ASP
   -PHP
   -JavaScript
   -HTML
   -Java/JSP
   -Database
   -Crystal Report
   -Visual Basic
   -이클립스
   -리눅스
   -기타
Windows API (VB)
Spread Sheet 7.0
컴퓨터활용 Tip
Other things
StarCraft 전략
StarCraft 문서
김용(金庸)
Son Q & Dieda

3. 연산자와 지정

기타 조회 수 6627 추천 수 0 2003.11.03 23:38:28
뭉충닷컴 *.118.82.167
### 산술 연산자
(+, -, *, /, %)
1. 피 연산자에 double형이 있으면 double형으로 연산이 수행
2. 피 연산자에 float형이 있으면 float형으로 연산이 수행
3. 피 연산자에 long형이 있으면 long형으로 연산이 수행
4. 그 외에는 int형으로 연산이 수행

ex)
계산식 -> 형변환 -> 결과형
byte * byte -> int * int -> int
short * short -> int * int -> int
byte/int -> int/int -> int
float * int -> float * float -> float
long/byte -> long/long -> long
long * double -> double * double -> double



### 대입 연산자
(=, op=)
+= -> a+=b -> a= a+b
-= -> a-=b -> a= a-b


### 증가, 감소연산자
(++., --)
1. 전치형(변수 증가, 감소후 연산)
ex)
int a=0; int b=5; a= ++b -> a=6, b=6
int a=0; int b=5; a= --b -> a=4, b=4

2. 후치형(연산후 변수 증가, 감소)
ex)
int a=0; int b=5; a= b++; -> a=5, b=6
int a=0; int b=5; a= b--; -> a=5, b=4


### 관계 연산자
(<, >, <=, ->, ==, !=)
== 연산자는 기본 데이터형이 올 경우에는 변수 내용을 비교하는 반면 객체형이 올 경우에는 객체의 주소값을 비교한다.


### 비트 연산자, 논리 연산자
(~, &, ^, |) (!, &&, ||)
1. ~연산자 : 보수(Complement)연산자라하며 비트1->0, 0->로 만든다.
a : 1001
~a: 0110

2. & 연산자 : and 연산자라고 하며 모두 같으면->1, 다르면 ->0 (곱하기로 생각해라!)
a : 1001
b : 1100
a&b : 1000

3. | 연산자 : or 연산자라하여 두개가 서로 0일 경우만 0이고 나머지는 모두 1(더하기로 생각)
a : 1001
b : 1100
a|b : 1101

4. ^ 연산자 : xor(Exclusive or)연산자, 서로 같으면->0, 서로 다르면 ->1
a : 1001
b : 1100
a^b : 0101

short cricuit 기능
비트 연산자(&, |)는 논리 연산 시 왼쪽과 오른쪽에 있는 모든식을 평가하는 반면에 논리 연산자(&&, ||)는 왼쪽 먼저 검사한후 오른쪽을 검사한다. 이렇게 전체식을 평가하지 않고 일부만 평가하고도 그 식의 결과를 알수 있을때 나머지 식을 평가하지 않는 기능을 short cricuit 기능이라고한다.


ex) 9|4 -> 13



### 이동(shift)연산자
(<<, >>, >>>)
이동 연산자는 32비트로 수행된다! 예제들은 보여주기 위해서 8비트로 표시 -_-
1. << 연산자 : 오른족을 0을 채우면서 왼쪽으로 이동
a :   11001001
a<<4: 10010000

2. >> 연산자 : 왼쪽에 1을 채우면서 오른쪽으로 이동, 부호비트가1이면 양수, 0이면 음수
a :   11001001
a>>4: 11111100

3. >>> 연산자 : 왼쪽에 0을 채우면서 오른쪽으로 이동, 부호비트를 0으로 채워서 항상 양수의 결과값만을 얻는다.
a :    11001001
a>>>4: 00001100



### 형변환(Casting)
왼쪽의 데이터형이 오른쪽 형보다 작거나 클 경우 일어난다.
자동 형변환이 일어나는 순서
byte -> short(char) -> int -> long -> float -> double

boolean형은 다른 기본유형으로 또는 다른 기본유형에서 boolean형으로 변환될수 없다.



### 조건연산자(? :)와 instanceof 연산자
1. 조건 연산자
조건? 식1: 식2

2. instanceof 연산자
프로그램 실행시 데이터형을 검사할수 있는 기능을 가지고 있다. instanceof 연산자는 왼쪽의 변수가 오른쪽에 오는 클래스의 객체이거나 하위 클래스일 경우 true를 반환하고 그렇지 않을경우에는 false를 반환한다. 반약 서로 비교되는 두 객체가 상속관계가 없다면 에러 발생!
String s = "hi";
System.out.print(s instanceof String); -> true 반환


### 연산자 우선순위..
음..이것은 적기 참으로 난감하구나.. -_-;;
문서 첨부 제한 : 0Byte/ 2.00MB
파일 크기 제한 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 기타 공부하는 곳 -_-; [2] 뭉충닷컴 2002-09-22 10645

토비의 스프링

웹사이트 최적화 기법 file [1]

기타 아파치 튜닝 [1]

기타 아파치 설정 httpd.conf

Intercepting Filter 패턴

Core J2EE Pattern file

기타 [C++ Study] Timer 사용 [3]

기타 [C++ Study] Click Count, Toggle, Move String

기타 [C++ Study] WinMain와 WinProc

기타 C# Pattern - Simple Pattern

기타 1. abex3 크랙 설명서

기타 어셈 강좌 1, 2장 정리

기타 SoftICE 4.05 설치 & 간단한 사용법

기타 5. Overloading, Overriding, Runtime Type and 객체지향

기타 4. Flow 통제와 예외 처리(Exception Handling)

기타 3. 연산자와 지정

기타 2. 선언과 엑서스 제어

기타 1. 자바언어의 기본

기타 Parameter 을 asp 처럼 사용하게 만든 class