|
|
1번째 줄: |
1번째 줄: |
− | '''대입 연산자'''(assignment operator)는 변수에 값을 대입할 때 사용하는 이항 연산자이며, 피연산자들의 결합 방향은 오른쪽에서 왼쪽이다. 또한, 자바의 경우 대입 연산자와 다른 연산자를 결합하여 만든 복합 대입 연산자를 제공한다.<ref><[http://tcpschool.com/java/java_operator_assignment 대입 연산자]>, </ref>
| + | #넘겨주기 [[대입연산자]] |
− | :{|class=wikitable width=800 style="background-color:#ffffee width:100%; margin:0 auto"
| |
− | |+대입 연산자
| |
− | !align=center style="background-color:#ffeecc"|기 호
| |
− | !align=center style="background-color:#ffeecc"|설 명
| |
− | |-
| |
− | |align=center|=
| |
− | |align=center|왼쪽 피연산자에 오른쪽 피연산자를 대입
| |
− | |-
| |
− | |align=center|+=
| |
− | |align=center|왼쪽 피연산자에 오른쪽 피연산자를 더한 후, 그 결과값을 왼쪽 피연산자에 대입
| |
− | |-
| |
− | |align=center|-=
| |
− | |align=center|왼쪽 피연산자에 오른쪽 피연산자를 뺀 후, 그 결과값을 왼쪽 피연산자에 대입
| |
− | |-
| |
− | |align=center|*=
| |
− | |align=center|왼쪽 피연산자에 오른쪽 피연산자를 곱한 후, 그 결과값을 왼쪽 피연산자에 대입
| |
− | |-
| |
− | |align=center|/=
| |
− | |align=center|왼쪽 피연산자에 오른쪽 피연산자를 나눈 후, 그 결과값을 왼쪽 피연산자에 대입
| |
− | |-
| |
− | |align=center|%=
| |
− | |align=center|왼쪽 피연산자에 오른쪽 피연산자를 나눈 후, 그 나머지를 왼쪽 피연산자에 대입
| |
− | |-
| |
− | |align=center|&=
| |
− | |align=center|왼쪽 피연산자를 오른쪽 피연산자와 비트 AND 연산 후, 그 결과값을 왼쪽 피연산자에 대입
| |
− | |-
| |
− | |align=center|(바)=
| |
− | |align=center|왼쪽 피연산자를 오른쪽 피연산자와 비트 OR 연산 후, 그 결과값을 왼쪽 피연산자에 대입
| |
− | |-
| |
− | |align=center|^=
| |
− | |align=center|왼쪽 피연산자를 오른쪽 피연산자와 비트 XOR 연산 후, 그 결과값을 왼쪽 피연산자에 대입
| |
− | |-
| |
− | |align=center|<<=
| |
− | |align=center|왼쪽 피연산자를 오른쪽 피연산자만큼 왼쪽 시프트한 후, 그 결과값을 왼쪽 피연산자에 대입
| |
− | |-
| |
− | |align=center|>>=
| |
− | |align=center|왼쪽 피연산자를 오른쪽 피연산자만큼 오른쪽 시프트한 후, 그 결과값을 왼쪽 피연산자에 대입
| |
− | |-
| |
− | |align=center|>>>=
| |
− | |align=center|왼쪽 피연산자를 오른쪽 피연산자만큼 부호에 상관없이 오른쪽 시프트한 후, 그 결과값을 왼쪽 피연산자에 대입
| |
− | |}
| |
− | | |
− | | |
− | == 개요 ==
| |
− | 대입 연산자는 변수에 값을 대입할 때 사용하는 이항 연산자이다. Java에서는 대입 연산자와 산술 연산자 등을 결합한 다양한 복합 대입 연산자를 제공하며, 복합 대입 연산자는 모두 두 개의 피연산자를 가지는 이항 연산자이다. 결합 방향은 둘 다 오른쪽에서 왼쪽이다.
| |
− |
| |
− | == 특징 ==
| |
− | ===분류===
| |
− | *대입 연산자
| |
− | 대입 연산자는 변수에 값을 대입하는 용도로 쓰인다.
| |
− | *복합 대입 연산자
| |
− | 복합 대입 연산자는 다른 연산자보다 우선순위가 낮기 때문에 생각하지 못한 결과가 발생할 수 있다.
| |
− | <ref><[http://blog.naver.com/PostView.nhn?blogId=gogo0792&logNo=10165347124 복합 대입 연산자]>,2013-04-01 </ref>
| |
− | 이 연산자는 변수명이 길 경우 일일이 긴 변수명을 타이핑할 때 번거로우며 오타 가능성이 있기 때문에 업무 효율성을 높이기 위해 만들어 낸 것이다.
| |
− | <ref><[https://m.blog.naver.com/PostView.nhn?blogId=jin750226&logNo=120193956888&proxyReferer=https:%2F%2Fwww.google.com%2F 복합 대입 연산자]>,2013-07-12 </ref>
| |
− | :{|class=wikitable width=500 style="background-color:#ffffee width:100%; margin:0 auto"
| |
− | |+대입 연산자
| |
− | !align=center style="background-color:#ffeecc"|복합 대입 연산자
| |
− | !align=center style="background-color:#ffeecc"|의 미
| |
− | |-
| |
− | |align=center|a += b
| |
− | |align=center|a = a + b
| |
− | |-
| |
− | |align=center|a -= b
| |
− | |align=center|a = a - b
| |
− | |-
| |
− | |align=center|a *= b
| |
− | |align=center|a = a * b
| |
− | |-
| |
− | |align=center|a /= b
| |
− | |align=center|a = a / b
| |
− | |-
| |
− | |align=center|a %= b
| |
− | |align=center|a = a % b
| |
− | |-
| |
− | |align=center|a &= b
| |
− | |align=center|a = a & b
| |
− | |-
| |
− | |align=center|a (바)= b
| |
− | |align=center|a = a | b
| |
− | |-
| |
− | |align=center|a ^= b
| |
− | |align=center|a = a ^ b
| |
− | |-
| |
− | |align=center|a <<= b
| |
− | |align=center|a = a << b
| |
− | |-
| |
− | |align=center|a >>= b
| |
− | |align=center|a = a >> b
| |
− | |-
| |
− | |align=center|a >>>= b
| |
− | |align=center|a = a >>> b
| |
− | |}
| |
− | == 활용 ==
| |
− | *복합 대입 연산자
| |
− | [코드]
| |
− | public static void main(String[] args)
| |
− | {
| |
− | int num1=20;
| |
− | int num2=4;
| |
− | num1 += num2; // num1 = num1 + num2
| |
− | System.out.println("num1의 값: " + num1);
| |
− | num1 -= num2; // num1 = num1 - num2
| |
− | System.out.println("num1의 값: " + num1);
| |
− | num1 *= num2; // num1 = num1 * num2
| |
− | System.out.println("num1의 값: " + num1);
| |
− | num1 /= num2; // num1 = num1 / num2
| |
− | System.out.println("num1의 값: " + num1);
| |
− | }
| |
− | | |
− | [결과]
| |
− | num1의 값: 24
| |
− | num1의 값: 16
| |
− | num1의 값: 80
| |
− | num1의 값: 5
| |
− | | |
− | {{각주}}
| |
− | | |
− | == 참고자료 ==
| |
− | * 대입 연산자, 〈[http://tcpschool.com/php/php_operator_assignment 대입 연산자 종류]〉, 《Tcpschool》
| |
− | * 대입 연산자, 〈[http://tcpschool.com/java/java_operator_assignment 대입 연산자 종류]〉, 《Tcpschool》
| |
− | * 5강 연산자의 종류, 〈[http://blog.naver.com/PostView.nhn?blogId=gogo0792&logNo=10165347124 복합 대입 연산자]〉,2013-04-01 《Tcpschool》
| |
− | * 자바 대입 연산자 * 복합 대입 연산자, 〈[https://m.blog.naver.com/PostView.nhn?blogId=jin750226&logNo=120193956888&proxyReferer=https:%2F%2Fwww.google.com%2F 복합 대입 연산자]〉,2013-04-01 《Naver Bolg - KH정보교육원》
| |
− | | |
− | | |
− |
| |
− | == 같이 보기 ==
| |
− | * [[연산자]]
| |
− | * [[논리연산자]]
| |
− | * [[시프트연산자]]
| |
− | * [[증감연산자]]
| |
− | * [[산술연산자]]
| |
− | * [[비트연산자]]
| |
− | | |
− | {{프로그래밍|검토 필요}}
| |