▶ 뭉충닷컴
 
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. 연산자와 지정

기타 조회 수 6628 추천 수 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 10647
31 토비의 스프링 뭉충닷컴 2011-03-28 3920
30 웹사이트 최적화 기법 file [1] 뭉충닷컴 2009-08-10 7467
29 기타 아파치 튜닝 [1] 뭉충닷컴 2009-08-03 8043
28 기타 아파치 설정 httpd.conf 뭉충닷컴 2009-08-03 5374
27 Intercepting Filter 패턴 뭉충닷컴 2009-06-17 7076
26 Core J2EE Pattern file 뭉충닷컴 2009-06-16 6548
25 기타 [C++ Study] Timer 사용 [3] 뭉충닷컴 2004-06-29 8625
24 기타 [C++ Study] Click Count, Toggle, Move String 뭉충닷컴 2004-06-29 7364
23 기타 [C++ Study] WinMain와 WinProc 뭉충닷컴 2004-06-28 8733
22 기타 C# Pattern - Simple Pattern 뭉충닷컴 2004-03-17 6237
21 기타 1. abex3 크랙 설명서 뭉충닷컴 2004-03-12 7016
20 기타 어셈 강좌 1, 2장 정리 뭉충닷컴 2004-03-12 7712
19 기타 SoftICE 4.05 설치 & 간단한 사용법 뭉충닷컴 2004-03-12 9122
18 기타 5. Overloading, Overriding, Runtime Type and 객체지향 뭉충닷컴 2003-12-02 6489
17 기타 4. Flow 통제와 예외 처리(Exception Handling) 뭉충닷컴 2003-11-05 6009
» 기타 3. 연산자와 지정 뭉충닷컴 2003-11-03 6628
15 기타 2. 선언과 엑서스 제어 뭉충닷컴 2003-11-03 5918
14 기타 1. 자바언어의 기본 뭉충닷컴 2003-11-03 5804
13 기타 Parameter 을 asp 처럼 사용하게 만든 class 뭉충닷컴 2003-11-03 6680