728x90
& 연산자 - Visual Basic
자세한 정보: & 연산자(Visual Basic)
learn.microsoft.com
데이터 연산 작업을 수행할 때는 연산자(operator)를 사용합니다.
연산자는 기능에 따라 대입 · 산술 · 관계 · 논리 · 증감 · 조건 · 비트 · 시프트 연산자 등으로 나누며, 이용 형탱에 따라 항 1개로 연산을 하는 단항(unary) 연산자와 항 2개로 연산을 하는 이항(binary) 연산자, 항 3개로 연산을 하는 삼항(ternary) 연산자로 나눕니다.
- 단항 연산자 - 연산자 / 피연산자
- 이항 연산자 - 피연산자1 / 연산자 / 피연산자2
- 삼항 연산자 - (식) ? 피연산자1 : 피연산자2
A += 1; // 단항 연산자 A = A + 1 // + 연산자, 1 피연산자
int num = 3000;
int number = num + 2000 // + 기호를 연산자라호 하며, num과 2000은 피연산자입니다.
//이항 연산자
할당 연산자와 증감 연산자
변수에 값을 대입하는 할당 연산자(=, +=, -=, *=, /=, %=)와 변수 값을 증가 또는 감소시키는 증감 연산자(++, --)가 있다.
변수 값 서로 바꾸기
using System;
namespace N_Assignment
{
internal class Assignment
{
public void AssignmentEx()
{
int A = 1;
int B = 2;
Console.WriteLine($"A={A} B={B}");
// A, B 위치 바꾸기
var temp = A;
A = B;
B = temp;
Console.WriteLine($"A={A} B={B} - temp 변수를 활용하여 성공");
}
}
}
실행 결과
증감 연산자
- ++(증가 연산자): 변수 값에 1을 더함
- --(감소 연산자): 변수 값에 1을 뺌
구분 | 설명 | 예 |
전위(prefix) 증감 연산자 | 정수형 변수 앞에 연산자가 위치하여 변수 값을 미리 증감한 후 나머지 연산을 수행 | ++a --a |
후위(postfix) 증감 연산자 | 정수형 변수 뒤에 연산자가 위치하여 연산식(대입)을 먼저 실행한 후 나중에 변수 값을 증감 | a++ a-- |
관계형 연산자와 논리 연산자 사용하기
관계형 연산자(relational oerator) 또는 비교 연산자(comparative operator)는 두 항이 큰지, 작은지 또는 같은지 등을 비교하는 데 사용합니다. 관계형 연사자의 결괏값은 논리 형식인 참(True) 또는 거짓(False)으로 출력됩니다.
연산자 | 예(ex) | 의미 |
< | A < B | 작은지(LessThen) |
<= | A <= B | 작거나 같은지(LessThenEqual) |
> | A > B | 큰지(GreaterThen) |
>= | A >= B | 크거나 같은지(GreaterThenEqual) |
== | A == B | 같은지(Equal) |
!= | A != B | 같지 않은지(NotEqual) |
using System;
using static System.Console;
namespace N_LogicalOperator
{
internal class LogicalOperator
{
public void LogicalOperatorEx()
{
var i = 3;
var j = 4;
var r = false;
r = (i == 3) && (j == 4);
WriteLine(r);
r = (i == 3) || (j == 5);
WriteLine(r);
r = i > j;
WriteLine(r);
}
}
}
비트 연산자와 시프트 연산자로 비트 단위 연산하기
비트 연산자
비트 연산자(bit operator)는 정수형 데이터의 값을 이진수 비트 단위로 연산을 수행할 때 사용합니다.
byte x = 0b1010; //10
byte y = 0b1100; //12
// AND
Console.WriteLine($" {Convert.ToString(x & y, 2)} -> {x & y, 2}");
// result = 1000 -> 8
// OR
Console.WriteLine($" {Convert.ToString(x | y, 2)} -> {x | y, 2}");
// result = 1110 -> 14
// XOR
Console.WriteLine($" {Convert.ToString(x ^ y, 2).PadLeft(4, '0')} -> {x ^ y, 2}");
// result = 0110 -> 6
// NOT
Console.WriteLine($" {Convert.ToString((byte)~x, 2).PadLeft(4, '0')} -> {~x, 3}");
// result = 11110101 -> -11
시프트 연산자
int numbuer = 2; // 0010
Console.WriteLine(number << 1); // 0010 -> 0100
//result 0100 = 4
조건 연산자
조건식 ? 식1 : 식2;
using System;
namespace N_ConditonalOperator
{
internal class ConditonalOperator
{
public void conditonalOperator()
{
int A = 0;
int B = 0;
int result = (10 > 5) ? A = 2 : B = 5;
Console.WriteLine("A="+A);
Console.WriteLine("B="+B);
Console.WriteLine("result="+result);
//A=2
//B=0
//result=2
}
}
}
연산자 우선순위
항목 | 연산자 | 우선순위 |
괄호 연산자 | ( ) | 높음🔼 |
증감 연산자 | ++, -- | |
산술 연산자 | -(음수) | |
*, / | ||
% | ||
+, - | ||
연결 연산자 | + | |
관계 연산자 | ==, !=, <, >, <=, >= |
|
논리 연산자 | !(NOT) | |
&&(AND) | ||
||(OR) | 낮음🔽 |
728x90
'C# > Basic Syntax' 카테고리의 다른 글
[C#] 7. 배열 (1) | 2022.09.22 |
---|---|
[C#] 6. 제어문 if/else, switch, for, while, foreach 등 (0) | 2022.09.20 |
[C#] 4. 콘솔 입/출력, Convert 클래스, var 키워드 (0) | 2022.09.18 |
[C#] 3. 문자/문자열/논리 데이터 형식 사용해보기 (0) | 2022.09.15 |
[C#] 2. 숫자 데이터 형식 사용하기 (2) | 2022.09.07 |